如何在访问子窗口的时候,禁止访问母窗口?
以下代码是用演示子窗口切换。请教如何在访问子窗口的时候,子窗口相对于母窗口是最顶层,也就是访问子窗口时母窗口始终在其之下,无法被点击,控件无法使用。谢谢 。#include <GUIConstants.au3>
$parent1= GUICreate("Parent1")
$showp2 = GUICtrlCreateButton("显示2",10,10)
$parent2= GUICreate("Parent2",200,100)
$hidep2 = GUICtrlCreateButton("隐藏2",10,10)
GUISwitch($parent1)
GUISetState()
While 1
$msg = GUIGetMsg(1)
Select
Case $msg = $GUI_EVENT_CLOSE And $msg = $parent1
Exit
Case $msg = $GUI_EVENT_CLOSE And $msg = $parent2
GUISetState(@SW_HIDE ,$parent2)
Case $msg = $showp2
GUISetState(@SW_SHOW ,$parent2)
Case $msg = $hidep2
GUISetState(@SW_HIDE ,$parent2)
EndSelect
WEnd:face (35):
[ 本帖最后由 itljl 于 2008-7-6 21:27 编辑 ] #include <GUIConstants.au3>
$parent1 = GUICreate("Parent1")
$showp2 = GUICtrlCreateButton("显示2", 10, 10)
$parent2 = GUICreate("Parent2", 200, 100)
$hidep2 = GUICtrlCreateButton("隐藏2", 10, 10)
GUISwitch($parent1)
GUISetState()
While 1
$msg = GUIGetMsg(1)
Select
Case $msg = $GUI_EVENT_CLOSE And $msg = $parent1
Exit
Case $msg = $GUI_EVENT_CLOSE And $msg = $parent2
GUISetState(@SW_HIDE, $parent2)
GUISetState(@SW_ENABLE,$parent1)
WinActivate("Parent1")
Case $msg = $showp2
GUISetState(@SW_SHOW, $parent2)
GUISetState(@SW_DISABLE,$parent1)
Case $msg = $hidep2
GUISetState(@SW_HIDE, $parent2)
GUISetState(@SW_ENABLE,$parent1)
WinActivate("Parent1")
EndSelect
WEnd 谢谢周哥。 回复 2# pcbar
不错,是我想要的 设置子窗体最前可以不? 这根本不是父子窗口,看看每个软件的关于对话框。那才叫子窗口。最重要的区别是,不可以单独显示子窗口。
页:
[1]