用vbs如何確定在 HTA 中選擇了哪些文本?
您好,腳本專家!如何確定在 HTA 中選擇了哪些文本?
-- DO
答:
您好,DO。您知道,大多數(shù)人認(rèn)為每天編寫(xiě)“您好,腳本專家!”專欄是世界上最吸引人、最令人興奮的工作之一。如果編寫(xiě)此專欄的腳本專家不這么懶惰的話,也許是這樣。比如說(shuō),很多時(shí)候他選擇自己認(rèn)為可以編成腳本的問(wèn)題。通常他手頭沒(méi)有能完成問(wèn)題中提到的任務(wù)的腳本,但他知道可以編寫(xiě)這樣一個(gè)腳本。這是行之有效的方法,但不是特別令人興奮的方法。
不過(guò),這個(gè)問(wèn)題有點(diǎn)不太一樣。您如何能確定在 HTA 中選擇了哪些文本?哎呀,我們也拿不準(zhǔn)您是否能確定在 HTA 中選擇了哪些文本。但是,事實(shí)證明您能夠確定:
<html>
<head>
<title>HTA Test</title>
</head>
<SCRIPT LANGUAGE="VBScript">
Sub ShowSelection
Set objSelection = Document.Selection.CreateRange()
Msgbox objSelection.text
End Sub
</SCRIPT>
<body>
<textarea name="ScriptArea" rows=5 cols=40></textarea><p>
<input id=runbutton type="button" value="Show Selection" onClick="ShowSelection">
</body>
我們?cè)谶@里使用的是一個(gè)小而簡(jiǎn)單的 HTA,其外觀如下:

什么?您怎么能沒(méi)有印象呢?那么,試一試吧。在該文本區(qū)域鍵入一些文本,然后突出顯示該文本的一部分:

現(xiàn)在單擊標(biāo)簽為 Show Selection(顯示選擇)的按鈕。非常幸運(yùn)的是,您將看到一個(gè)消息框,告訴您哪些文本已被選中:

您說(shuō)對(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
沒(méi)錯(cuò):只有兩行代碼。首先我們創(chuàng)建一個(gè)新的 TextRange 對(duì)象;這一過(guò)程可通過(guò)調(diào)用 CreateRange() 方法來(lái)實(shí)現(xiàn),此方法恰好是 Document.Selection 對(duì)象的一部分:
Set objSelection = Document.Selection.CreateRange()
事實(shí)證明,TextRange 對(duì)象的屬性之一就是 Text 屬性。顧名思義,該屬性返回的文本正好是在此特定 TextRange 中找到的文本。要返回當(dāng)前在 HTA 中選定的文本,我們必須要做的就是顯示 Text 屬性的值:
Msgbox objSelection.Text
順便說(shuō)一下,所選文本并不限于文本框或文本區(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>
很酷吧?您知道,也許這真是世界上最吸引人、最令人興奮的工作。
好了…。
相關(guān)文章
hta實(shí)現(xiàn)的二進(jìn)制文件轉(zhuǎn)換為文本
hta 二進(jìn)制文件轉(zhuǎn)換為文本工具2008-06-06ScriptomaticV2.hta學(xué)習(xí)腳本好工具
ScriptomaticV2.hta學(xué)習(xí)腳本好工具,來(lái)自微軟官方的東西,學(xué)習(xí)hta的朋友要收藏下。2007-01-01hta實(shí)現(xiàn)的定時(shí)重啟或關(guān)閉計(jì)算機(jī)的小工具
一個(gè)用于定時(shí)重啟或關(guān)閉計(jì)算機(jī)的小工具,適用于Windows 2K/XP/20032008-06-06