如何判断点的是哪个批量创建的按钮(已解决)
本帖最后由 zjg2003 于 2019-8-5 11:55 编辑如何把判断点击的是哪个按钮,并把值给到 $y 这个参数
或者能取得点击的按钮的名字也可以(即显示的按钮1 或者 按钮2 等值)
详细代码如下:
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)
Local $y ,$i ,$x
$Form1 = GUICreate("界面测试", 300, 350)
GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
If Not @error Then
For $i = 1 To 7
Local $x = 30 * $i ;定义控件TOP参数位置
GUICtrlCreateLabel($i, 24, $x, 52, 17)
GUICtrlCreateLabel($i, 100, $x, 100, 17)
GUICtrlCreateButton("按钮" & $i, 150, $x , 120, 25)
GUICtrlSetOnEvent(-1, "Button1Click")
GUISetState(@SW_SHOW)
Next
EndIf
While 1
Sleep(100)
WEnd
Func Button1Click()
$y = Floor((@GUI_CtrlId - 4) / 3) + 1
MsgBox(0,"","这是第 " &$y & " 个按钮")
EndFunc ;==>Button1Click
Func Form1Close()
Exit
EndFunc ;==>Form1Close
第13行的第4个参数100改为40,否则遮挡了按钮的左边区域点击。
第26行上面插一行 $y = Floor((@GUI_CtrlId - 4) / 3) + 1 afan 发表于 2019-8-5 11:12
第13行的第4个参数100改为40,否则遮挡了按钮的左边区域点击。
第26行上面插一行 $y = Floor((@GUI_CtrlId ...
谢谢 大佬,完全解决了这个问题
第13行不影响 的 zjg2003 发表于 2019-8-5 11:54
谢谢 大佬,完全解决了这个问题
第13行不影响 的
按钮的左边区域多试几次,或者 GUICtrlSetBkColor() 看看文本控件覆盖到哪了…
不肯定的问题我是提都不会提的 本帖最后由 xyx115 于 2019-8-5 13:51 编辑
我的做法,如图所示。
这样做了12个服务器,每个服务器有功能按钮11个。也就是完成了11个功能,参数不同(,每个功能都有12个不同参数)的功能。
不错支持一下
页:
[1]