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]表示第二高的,以此類推。
|