Tag type |
Value |
Comment |
Caption |
Case sensitive |
|
Prior text |
^Find What: |
"Find What" is the nearest static text above or to the left of the check box |
Index |
#1 |
The Case Sensitive check box is the first check box in the dialog |
Window ID |
$1041 |
|
Location |
@(57,65) |
|
Attributes |
[blank] |
Attributes are only recorded for Html objects. |
情形 |
使用的tag形式 |
GUI对象的Label包含了动态文本。例如对话框中第三个文本字串是一个路径c:\myapp |
使用index,例如:“#3”
注意:避免为那些MoveableWin类使用index tag。因为这样可能在那些多窗口的情况下选择了一个随机的窗口。 |
GUI对象的父亲会在运行时变化。例如,打开的对话框可能在运行时有一个或者多个父亲应用。 |
指定该对象的父亲是当前激活的应用。例如:
“~ActiveApp/[DialogBox]Open” |
你需要在运行时设置动态设置tag |
用一个函数调用代替tag值。例如,CreateTag是一个用户定义的函数用来返回一个字符串:
MenuItem CheckBox tag CreateTag(this) ?STRING CreateTag (WINDOW wWindowIdentifier) switch (wWindowIdentifier) case TestApp.Control.CheckBox return "Check box|$200"
… |
两个对话框拥有同样的Label或者caption。但是没有相同的内容。例如,一个open对话框有一个Name文本域,另外一个open对话框有一个Search的按钮。 |
为每个tag指定一个唯一的孩子。你可以为孩子使用任何明确的tag形式,但是不要使用window indentifier。例如:
"[DialogBox]Open/[TextField]First Name/.." "[DialogBox]Open/[PushButton]New Search/.." "[DialogBox]Open/[ComboBox] #2/.." [BrowserChild]ThePage/[BrowserChild]One of several frames with the same caption/[HtmlHeading]Unique heading/.."
浏览器frame的tag。(BrowserChild有”one of several frames with the same caption”的caption)
"[BrowserChild]ThePage/[BrowserChild]One of several frames with the same /[HtmlHeading]Unique heading/../.."
浏览器页的tag (BrowserChild 有"ThePage"的caption)
|
GUI对象没有Label和caption,并且它的位置(因此包括Index)会在运行时动态变化 |
使用window Id
|
GUI对象有Label或者是caption,但是你不准备用它们作为tag,因为它们会变化。 |
可以使用index或者是prior text |
你希望国际化你的应用程序。 |
使用window ID或者用变量代替你的tag |
GUI对象是一个图形化的控件,就像一个工具条。 |
使用location |
当你的程序启动的时候你想唤起一个对话框,而不是主窗口。例如,你想一个名叫Login的对话框。 |
将对话框的类从DialogBox改成MainWin,然后在tag里面指定它的真实类,例如:
"[DialogBox]Login" |
在某个时间,超过一个的window实例显示 |
使用实例语法,它的形式为:tag-string[n],其中你代表实例。[1]表示在桌面上离顶端最近的窗口实例,[2]表示第二高的,以此类推。
|