わんすけに聞いてみる WinActor [WinActor]UIAutomationをWinActorに組み込む

[WinActor]UIAutomationをWinActorに組み込む

■ UI自動化について考える

 

前回作ったUIAutomationのモジュールをWinActorスクリプト実行ステージに組み込んでみる。

これで、Inspectツールで検査したUI要素をそのまま操作できる・・・ハズ。

 

まず、前回作った「UIA_cmd.exe」を、WinActor.exeと同じフォルダに配置する。

 

1.スクリプト実行ステージのスクリプトはこんな感じ。
hwnd = GetUMSWindowHandle(@ウィンドウ識別名@)
prop = !プロパティ|AutomationID,Name!
keyVal = !プロパティの値!
func = !操作の内容|Click,Focus,GetValue,SetValue,GetSelection,GetSelectionItemIsSelected,SetSelectionItemValue,GetToggle,SetToggle,GetName!
sval = !設定値!
optn = !オプション|,Next,Previous,FirstChild,LastChild!

uia = "UIA_cmd.exe "

If IsNull(hwnd) Then
  Err.Raise 1, "", "ウィンドウハンドルを取得できませんでした。"
Else
  If Len(optn) > 0 Then prop = prop & ":" & optn
  Set objExecCmd = CreateObject("WScript.Shell").Exec(uia & func & " """ & hwnd & """ """ & prop & ":" & keyVal & """ " & sval)
  Do While objExecCmd.Status = 0
    WScript.Sleep(500)
  Loop
  SetUMSVariable $取得結果$ , objExecCmd.StdOut.ReadAll
End If

 

2.設定画面はこんな感じ。

 

注釈にはこれくらいコメント付けておこう。。。

「設定値」は操作の内容でSetValueを選択した時以外は値⇒で空白にしておいて下さい。

 

ちゃんと動いたし・・・いい感じじゃね???

Related Post