请教如何禁止点击主界面?
本帖最后由 smooth 于 2014-3-28 20:09 编辑程序执行时会弹出来一个小的界面,弹出来后我想禁止点击主界面,类似于MSGBOX加了主界面的句柄的那种效果,等这个小的界面消失之后才恢复主界面。不知道可否实现?
本帖最后由 水木子 于 2014-3-28 21:10 编辑
可以实现啊!简单的父子窗,就可以搞定了。
Opt('GUIOnEventMode', 1)
$MyGui1 = GUICreate('父窗口', 300, 280)
GUISetOnEvent(-3, '_GuiMsg')
$Btnton1_1 = GUICtrlCreateButton('显示子窗口', 100, 110, 100, 30)
GUICtrlSetOnEvent(-1, '_GuiMsg')
GUISetState()
$MyGui2 = GUICreate('子窗口', 200, 100)
GUISetOnEvent(-3, '_GuiMsg')
$Btnton2_1 = GUICtrlCreateButton('显示', 50, 30, 100, 30)
GUICtrlSetOnEvent(-1, '_GuiMsg')
While 1
Sleep(250)
WEnd
Func _GuiMsg()
Switch @GUI_CtrlId
Case -3
Switch @GUI_WinHandle
Case $MyGui1
Exit
Case $MyGui2
GUISetState(@SW_ENABLE, $MyGui1)
GUISetState(@SW_HIDE, $MyGui2)
EndSwitch
Case $Btnton1_1
GUISetState(@SW_SHOW, $MyGui2)
GUISetState(@SW_DISABLE, $MyGui1)
Case $Btnton2_1
MsgBox(64, '测试', '我是子窗口')
EndSwitch
EndFunc ;==>_GuiMsg 简单的解决方法,弹出子窗体时,把父窗体的属性设置为@SW_DISABLE,子窗体结束时再恢复。 可以实现啊!简单的父子窗,就可以搞定了。
水木子 发表于 2014-3-28 21:08 http://www.autoitx.com/images/common/back.gif
水版的事件模式,另人惊叹
个人习惯,事件模式了就用不同的函数,用同一函数的话就窗口模式吧 水版的写的模式,我还是第一次看到,看得有点晕。 本帖最后由 smooth 于 2014-3-29 09:03 编辑
回复 3# skyfree
按照S大说的,实现起来很简单,多谢了。水版的方法也非常好,值得深入研究。
$Form_M = GUICreate("", 280, 100, -1, -1, -1, -1, $Form1)
GUISetState(@SW_SHOW)
GUISetState(@SW_DISABLE, $Form1) 本帖最后由 水木子 于 2014-3-29 11:36 编辑
回复 4# seniors
回复 5# smooth
不用事件模式也行,其实道理都差不多。
这算是比较简单的父子窗练习,没什么深奥的东西。
Global $iGuiState = 0
$MyGui1 = GUICreate('父窗口', 300, 280)
$Btnton1_1 = GUICtrlCreateButton('显示子窗口', 100, 110, 100, 30)
GUISetState()
$MyGui2 = GUICreate('子窗口', 200, 100)
$Btnton2_1 = GUICtrlCreateButton('显示', 50, 30, 100, 30)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case -3
If $iGuiState = 0 Then
Exit
Else
GUISetState(@SW_ENABLE, $MyGui1)
GUISetState(@SW_HIDE, $MyGui2)
$iGuiState = 0
EndIf
Case $Btnton1_1
GUISetState(@SW_SHOW, $MyGui2)
GUISetState(@SW_DISABLE, $MyGui1)
$iGuiState = 1
Case $Btnton2_1
MsgBox(64, '测试', '我是子窗口')
EndSwitch
WEnd 本帖最后由 smooth 于 2014-3-29 12:55 编辑
回复 7# 水木子
这个更好理解,因为我没有研究过事件模式。不知道在创建窗口的时候,添加另外一个窗口的句柄,这样做有什么效果?直接看好像看不出来。谢谢! 模态窗口更好.. 有用,收藏一下
页:
[1]