vanlee 发表于 2009-2-10 09:31:51

请教GUI控件问题

我是初学者,GUI遇到点问题,请高手们指点一一。比方说我生成了一个窗口,有一个按钮控件(开始),点一下(开始)运行一段代码进入一个循环,然后把按钮改成(停止),然后应该是等待按停止按钮跳出循环,可是为什么实现不了,它还是一直循环下去?有没有高手教教我呀,急死我了。

顽固不化 发表于 2009-2-10 11:27:33

循环中加入判断按钮状态的语句,应该很好实现的。

vanlee 发表于 2009-2-10 12:13:00

可是我发现进入FOR以后GUIGetMsg()就失去作用了!

顽固不化 发表于 2009-2-10 12:27:52

在For里加上判断GUIGetMsg(),每循环一次检查一次,不会不起作用吧?

范统.贾 发表于 2009-2-10 12:41:55

试试看。。好像要多循环一个。

$Form1 = GUICreate("Form1", 250, 97, 192, 114)
$Button1 = GUICtrlCreateButton("开始", 24, 24, 201, 41, 0)
GUISetState()

While 1
        Switch GUIGetMsg()
                Case -3
                        Exit
                Case $Button1
                        If GUICtrlRead($Button1) = "开始" Then
                                GUICtrlSetData($Button1, "停止")
                                _XunHuan()
                        EndIf
        EndSwitch
WEnd

Func _XunHuan()
        For $i = 1 to 10
                If GUIGetMsg() = $Button1 And GUICtrlRead($Button1) = "停止" Then
                        GUICtrlSetData($Button1, "开始")
                        Return
                Else       
                        MsgBox(0, 0, $i)
                EndIf
        Next
EndFunc
页: [1]
查看完整版本: 请教GUI控件问题