2

私は、1 つのウィンドウのみで構成され、ほとんど常に最小化されているクローズド ソースのサード パーティ製 Windows ソフトウェアを使用しています。システム全体のホットキーを使用して、そのウィンドウでコンボボックスの選択された項目を変更できるようにしたいと思います。可能であれば、その過程でサードパーティのアプリを最小化しておきたいです。

これは Autoit や Autohotkey を使えば簡単にできると思いますが、私はこれらのツールを使ったことがありません。

この仕事に適したツールはどれですか? どこから始めるべきかについての指針はありますか?たとえば、同様のシナリオを示すチュートリアルへのリンクです。

4

1 に答える 1

3

これを行う方法の小さな例を書きました。何らかの理由で、コードで作成した GUI を使用しました。スクリプトで作成されていない GUI を操作する別の例を入れることについて見ていきます。

AutoIt コード...

HotKeySet("{ESC}", "_Exit")
HotKeySet("^{z}", "_SetItem1")
HotKeySet("^{x}", "_SetItem2")
HotKeySet("^{c}", "_SetItem3")

;Set up a quick GUI for us to play with.
$gui = GUICreate("Test GUI", 150, 150, -1, -1)
GUICtrlCreateCombo("", 10, 50, 130)
GUICtrlSetData(-1, "Item1|Item2|Item3", "Item1")
GUISetState(@SW_SHOW)

While 1
    ; Just to keep things running
WEnd

Func _SetItem1()
    ControlSend ( "Test GUI", "", "ComboBox1", "{up}{up}{up}" )
EndFunc   ;==>_SetItem1


Func _SetItem2()
    ControlSend ( "Test GUI", "", "ComboBox1", "{up}{up}{up}{down}" )
EndFunc   ;==>_SetItem1


Func _SetItem3()
    ControlSend ( "Test GUI", "", "ComboBox1", "{up}{up}{up}{down}{down}" )
EndFunc   ;==>_SetItem1

Func _Exit()
    Exit
EndFunc   ;==>_Exit
于 2009-12-16T00:37:56.520 に答える