Hallo Leute ,
mir ist aufgefallen das Befehle , die unmittelbar nach einem
[autoit]AdlibUnRegister
[/autoit]stehen , nicht oder nicht richtig ausgeführt werden.
Hier mal ein Beispiel:
Spoiler anzeigen
#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]Opt("GUIOnEventMode", 1)
[/autoit] [autoit][/autoit] [autoit]Global $Label, $iPos = 0
[/autoit] [autoit][/autoit] [autoit]$Form1 = GUICreate("Adlibtest", 200, 100, 990, 30)
GUISetOnEvent(-3, "_Exit")
$Label = GUICtrlCreateLabel("Testlabel", 25, 14, 300, 16)
GUICtrlSetFont(-1, 11, 800, 0, "MS Sans Serif")
$Button1 = GUICtrlCreateButton("Start",15,50,60,40)
GUICtrlSetOnEvent(-1,"_startadlib")
$Button2 = GUICtrlCreateButton("Stop",120,50,60,40)
GUICtrlSetOnEvent(-1,"_stopadlib")
GUISetState(@SW_SHOW)
While Sleep(50)
WEnd
Func _startadlib()
GUICtrlSetData($Label,"Running")
AdlibRegister("_Laufschrift")
EndFunc
Func _stopadlib()
AdlibUnRegister("_Laufschrift")
GUICtrlSetData($Label,"Stopped") ; Das hier wird nicht oder zu früh ausgeführt.
EndFunc
Func _Exit()
Exit
EndFunc
Func _Laufschrift()
GUICtrlSetData($Label, StringMid("Running", $iPos) & " " & "Running")
$iPos += 1.8
If $iPos > StringLen("Running") Then $iPos = 0
EndFunc
Wenn ihr hier abwechselnd Start und Stop drückt , wird das Label früher oder später auf "Running Running Running" stehenbleiben obwohl es ja , nach dem AdlibUnRegister, auf
"Stopped" gesetzt werden sollte.
Ist das ein Bug oder mache/verstehe ich etwas falsch??