回复 1# fenhanxue
这样做有什么意义?我觉得除了对研究窗体编程的批量创建控件有点作用外,没什么用了吧?!
#include <WindowsConstants.au3>
Local $iSeq = 0
Local $iNumber = 11 ;每行按钮数量
Local $iSpacingX = 50, $iSpacingY = 30 ;垂直、水平,间距
$Form = GUICreate("test", 623, 296, 330, 147, BitOR($GUI_SS_DEFAULT_GUI, $WS_VSCROLL))
Assign('button' & $iSeq, GUICtrlCreateButton("创建2", 25, 25, 48, 25))
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case -3
Exit
Case 3 To 9999 ;点击窗口内任一控件
If StringRegExp(GUICtrlRead($nMsg), '^创建\d+$') Then ; 只响应"创建."
If IsHWnd(GUICtrlGetHandle($nMsg + 1)) Then ContinueLoop ; 不重复创建
$iSeq += 1
Assign('button' & $iSeq, GUICtrlCreateButton("创建" & ($iSeq + 2), $iSpacingX * Mod($iSeq, $iNumber) + 25, $iSpacingY * Floor($iSeq / $iNumber) + 25, 50, 25))
EndIf
EndSwitch
WEnd
有兴趣还可以移步此帖作进一步研究. 水木子版主就是用的消息模式弄出来的.
http://61.153.183.105/forum.php? ... 1%BF%2B%BF%D8%BC%FE |