这段代码之前在3.14.5一直很正常,在升级3.16.1后遇到了个响应按钮延迟显示的问题:点击按钮后不更新显示,需要点下gui才能正常显示输入的值。
目前的解决方法是:去掉_rev函数中的do unitl,while,增加sleep(10)
还请各位帮看下,我这代码是不是有问题,怎么改才能正常?或者更好的代码写法?
opt('GUIOnEventMode',1)
$gui = GUICreate("test",200,100)
GUISetOnEvent(-3,'_exit')
$bt = GUICtrlCreateButton("test",100,60)
GUICtrlSetOnEvent(-1,'_bt')
$input = GUICtrlCreateInput("0",50,20,100,20)
GUISetState()
$a = 0
TCPStartup()
Local $sIPAddress = "127.0.0.1"
Local $iPort = 65432
Local $iListenSocket = TCPListen($sIPAddress, $iPort, 100)
While 1
_rev()
Sleep(10)
WEnd
_exit()
Func _rev()
Local $iSocket = 0
Do
$iSocket = TCPAccept($iListenSocket)
Until $iSocket <> -1
EndFunc
Func _bt()
$a += 1
GUICtrlSetData($input,$a)
EndFunc
Func _exit()
TCPShutdown()
Exit
EndFunc
|