本帖最后由 anythinging 于 2022-9-3 18:03 编辑
遇到个小问题,请教各位指点。
检测form2窗口是否存在的时候,如果定义了form2变量但没创建窗口,此时用wingetstate检测到的结果不准确。(目前暂时的解决的方法是定议form2=0,不知原理)
#include <AutoItConstants.au3>
#include <MsgBoxConstants.au3>
Global $form2
$form1 = GUICreate('',300,200)
$bt1 = GUICtrlCreateButton('check',20,20)
$btshow = GUICtrlCreateButton('show',70,20)
$bthide = GUICtrlCreateButton('hide',120,20)
GUISetState()
While 1
Switch GUIGetMsg()
Case -3
Exit
Case $bt1
Local $iState = WinGetState($form2)
MsgBox(262144,'$iState','Error= '&@error&@CR&'$iState= '&$iState,0)
If BitAND($iState, 1 ) Then
MsgBox(262144,$iState,'窗口存在',1)
Else
MsgBox(262144,$iState,'窗口不存在',1)
EndIf
Case $btshow
$form2 = GUICreate('form2',300,200,1,1)
GUISetState(@SW_SHOW,$form2)
Case $bthide
GUIDelete($form2)
EndSwitch
WEnd
|