通过热键更改最小化第三方应用程序的组合框值
问题描述:
我有一块封闭的第三方Windows软件,它只包含一个窗口,几乎所有时间都被最小化。我希望能够通过系统范围的热键在该窗口中更改组合框的选定项目。如果可能的话,我希望在此过程中尽量减少第三方应用程序。通过热键更改最小化第三方应用程序的组合框值
我想这应该很容易做到与Autoit或Autohotkey,但我从来没有使用过这些工具之前。
哪种工具更适合这项工作?有没有人有从哪里开始的指针?例如指向类似场景的教程链接。
答
我给你写了一个如何做到这一点的小例子。出于某种原因,我使用了代码构建的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