[AHK]获取下单窗口的控件列表


如果知道下单界面控件的 ahk_class  或 ahk_id(即hwnd)就可以用 controlsend来自动下单。

[AHK]获取下单窗口的控件列表
比如证券代码输入框的hwnd是ctrHwnd,则发送 股票代码600050到代码窗口例子如下:

controlsend,,600050,ahk_id %ctrHwnd%

以下这两个截图,是通达信单独下单程序(Tc.exe)中的控件信息 ,

[AHK]获取下单窗口的控件列表

[AHK]获取下单窗口的控件列表

可以用星雨朝霞的ahkinfo1.3.5脚本来手动查看相应控件信息,如下操作:

[AHK]获取下单窗口的控件列表

[AHK]获取下单窗口的控件列表

参考星雨朝霞的ahkinfo1.3.5脚本改造如下,以下脚本各位使用时请调整第二行配置

Gui,+Resize
target:="ahk_exe Tc.exe"
Gui, Add, ListView, Checked h600 w800,  类别名|ID|句柄|文本  ; 创建 ListView.
WinGet,CtrList,ControlList,%target%
	LV_Delete()
	Loop, Parse,CtrList,`n
	{
		ControlGet,CtrlHwnd,Hwnd,,%A_LoopField%,%target%
		CtrlID:= DllCall("GetDlgCtrlID", uint, CtrlHwnd)
		if (CtrlID<=0 )
			CtrlID=
		ControlGetText,CtrlText,%A_LoopField%,%target%
		ControlGet,Visible,Visible,,%A_LoopField%,%target%
		if (Visible=1)
		{
			Visible=Check
		}
		else if (Visible=0)
		{
			Visible=-Check
			;~ continue
		}
		LV_Add(Visible,A_LoopField,CtrlID,CtrlHwnd,CtrlText)
		LV_ModifyCol(1,"","类别名[列表](" A_Index ")")
	}
;~ LV_ModifyCol("Hdr")  ; 自动调整列宽.
LV_ModifyCol()  ; 根据内容自动调整每列的大小.
Gui Show
return

GuiClose:  ; 当用户关闭 ListView 所在 GUI 窗口时退出脚本.
ExitApp

 

上一篇:NumPy 基本语法汇总


下一篇:(性能工具)arthas Java诊断工具