用vbs如何确定在 HTA 中选择了哪些文本?

所属分类: 脚本专栏 / hta 阅读数: 1143
收藏 0 赞 0 分享
问:
您好,脚本专家!如何确定在 HTA 中选择了哪些文本?
-- DO
答:
您好,DO。您知道,大多数人认为每天编写“您好,脚本专家!”专栏是世界上最吸引人、最令人兴奋的工作之一。如果编写此专栏的脚本专家不这么懒惰的话,也许是这样。比如说,很多时候他选择自己认为可以编成脚本的问题。通常他手头没有能完成问题中提到的任务的脚本,但他知道可以编写这样一个脚本。这是行之有效的方法,但不是特别令人兴奋的方法。
不过,这个问题有点不太一样。您如何能确定在 HTA 中选择了哪些文本?哎呀,我们也拿不准您是否能确定在 HTA 中选择了哪些文本。但是,事实证明您能够确定:
<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>
我们在这里使用的是一个小而简单的 HTA,其外观如下:
HTA


什么?您怎么能没有印象呢?那么,试一试吧。在该文本区域键入一些文本,然后突出显示该文本的一部分:

HTA


现在单击标签为 Show Selection(显示选择)的按钮。非常幸运的是,您将看到一个消息框,告诉您哪些文本已被选中:

HTA


您说对了:看上去就是这个样子了。

那么,这一切都是如何做到的呢?我们首先创建一个含有一个文本区域和一个按钮的 HTA。我们不讨论创建 HTA 本身的细节,如果您需要一些背景信息,请查看 HTA Developers Center(英文)或 Scripting Week 3 webcast on HTAs(英文)今天我们只重点讨论您单击此按钮时运行的子例程:
Sub ShowSelection
    Set objSelection = Document.Selection.CreateRange()
    Msgbox objSelection.Text
End Sub
没错:只有两行代码。首先我们创建一个新的 TextRange 对象;这一过程可通过调用 CreateRange() 方法来实现,此方法恰好是 Document.Selection 对象的一部分:
Set objSelection = Document.Selection.CreateRange()
事实证明,TextRange 对象的属性之一就是 Text 属性。顾名思义,该属性返回的文本正好是在此特定 TextRange 中找到的文本。要返回当前在 HTA 中选定的文本,我们必须要做的就是显示 Text 属性的值:
Msgbox objSelection.Text
顺便说一下,所选文本并不限于文本框或文本区域中的文本。选择此 HTA 内的任意文本,看看会发生什么:
<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>
很酷吧?您知道,也许这真是世界上最吸引人、最令人兴奋的工作。
好了…。

更多精彩内容其他人还在看

什么是hta(HTML Application)

HTA是HTML Application的缩写(HTML应用程序),是软件开发的新概念,直接将HTML保存成HTA的格式,就是一个独立的应用软件,与VB、C++等程序语言所设计的软件界面没什么差别
收藏 0 赞 0 分享

A notepad made in HTA(hta实现的记事本)

这个记事本可以在Win9x中运行,并且处理更大的文件。可以通过修改html修改页面,喜欢学习hta的朋友可以参考下
收藏 0 赞 0 分享

关键字排名(Keyword Ranking)

从国外网站看到的实时检测输入关键字在搜索引擎中的排名的hta代码,需要的朋友可以参考下
收藏 0 赞 0 分享

DOM浏览器(方便需要dom操作的朋友)

Lets you navigate through the properties of an open instance of Explorer and IE
收藏 0 赞 0 分享

HTANoid 用hta编写的一个经典的游戏

这个是外国人用hta写的一些比较经典的小游戏,喜欢hta的朋友看看
收藏 0 赞 0 分享

hta文件介绍(编写小程序的好东东)

HTA是HTML Application的缩写(HTML应用程序),是软件开发的新概念,直接将HTML保存成HTA的格式,就是一个独立的应用软件,与VB、C++等程序语言所设计的软件没什么差别
收藏 0 赞 0 分享

用来猜后台的HTA小程序

虽然文件时用来猜后台地址的程序,但里面的代码确实值得我们参考学习
收藏 0 赞 0 分享

用hta做的好玩的小程序(固定在桌面)

好玩的小程序 用hta做的,运行后就固定在桌面了
收藏 0 赞 0 分享

用hta实现的远程桌面连接脚本

用hta实现的远程桌面连接效果的脚本,需要事先在hta中填好ip,端口等信息,当然你也可以自己修改下,可以输入ip端口的
收藏 0 赞 0 分享

如何使一个HTA位于屏幕中心(Win32_DesktopMonitor)

我们可以调整(如果需要)窗口大小并使其居中,但这样做时会在屏幕上出现瞬间的闪烁。这并不是太明显,其实际结果就是你所期望的:HTA 会位于屏幕中心
收藏 0 赞 0 分享
查看更多