什么?您怎么能沒有印象呢?那么,試一試吧。在該文本區(qū)域鍵入一些文本,然后突出顯示該文本的一部分:
現(xiàn)在單擊標(biāo)簽為 Show Selection(顯示選擇)的按鈕。非常幸運(yùn)的是,您將看到一個(gè)消息框,告訴您哪些文本已被選中:
您說對(duì)了:看上去就是這個(gè)樣子了。
那么,這一切都是如何做到的呢?我們首先創(chuàng)建一個(gè)含有一個(gè)文本區(qū)域和一個(gè)按鈕的 HTA。我們不討論創(chuàng)建 HTA 本身的細(xì)節(jié),如果您需要一些背景信息,請(qǐng)查看 HTA Developers Center(英文)或 Scripting Week 3 webcast on HTAs(英文)。今天我們只重點(diǎn)討論您單擊此按鈕時(shí)運(yùn)行的子例程:
Sub ShowSelection
Set objSelection = Document.Selection.CreateRange()
Msgbox objSelection.Text
End Sub
沒錯(cuò):只有兩行代碼。首先我們創(chuàng)建一個(gè)新的 TextRange 對(duì)象;這一過程可通過調(diào)用 CreateRange() 方法來實(shí)現(xiàn),此方法恰好是 Document.Selection 對(duì)象的一部分:
Set objSelection = Document.Selection.CreateRange()
事實(shí)證明,TextRange 對(duì)象的屬性之一就是 Text 屬性。顧名思義,該屬性返回的文本正好是在此特定 TextRange 中找到的文本。要返回當(dāng)前在 HTA 中選定的文本,我們必須要做的就是顯示 Text 屬性的值:
Msgbox objSelection.Text
順便說一下,所選文本并不限于文本框或文本區(qū)域中的文本。選擇此 HTA 內(nèi)的任意文本,看看會(huì)發(fā)生什么:
<html>
<head>
<title>HTA Test</title>
</head>
<SCRIPT LANGUAGE="VBScript">
Sub ShowSelection
Set objSelection = Document.Selection.CreateRange()
Msgbox objSelection.text
End Sub
</SCRIPT>
<body>
<p> Here is some text in an HTA. Select any portion of the text and then
click the Show Selection button.</p>
<input id=runbutton type="button" value="Show Selection" onClick="ShowSelection">
</body>
很酷吧?您知道,也許這真是世界上最吸引人、最令人興奮的工作。
好了…。
新聞熱點(diǎn)
疑難解答