beestinga Posted May 12, 2006 Share Posted May 12, 2006 (edited) Hokay, So I've got a script that looks like this: thing1() func thing1() rock people's socks off for a while here. thing2() Endfunc func thing2() GuiCreate("Action!",260,100) GUISetState() Opt("GUICoordMode",2) Opt("GUIOnEventMode", 1) $hitbutton=GUICtrlCreateButton ("Action 1", 10, 30, 50) GUICtrlSetOnEvent(-1, "thing1") $standbutton=GUICtrlCreateButton ( "Action 3", 0, -1) GUICtrlSetOnEvent(-1, "thing3") While 1 $msg = GUIGetMsg() If $msg = $GUI_EVENT_CLOSE Then ExitLoop Wend EndFunc func thing3() guidelete("Action!") Rock some more socks off, totally flipping out and killing kittens and stuff... thing1() endfunc OK, so basically, i launch the app, it does some stuff, launches a gui for me to choose what to do, I choose and it does that stuff, then basically starts over again. Clearly, all of this would be much easier if I could figure out how to program in MessageLoop mode, as I think that's more attuned for what I'm trying to do than OnEvent mode. Anyhow, my problem is that the script works perfectly the first time through. I click my button, it executes the button's function, goes back to the top, and re-creates my gui for me, but when I click on the buttons on the gui, nothing happens. The gui shows up just right, but none of the buttons work, for some reason. Edited May 12, 2006 by beestinga Link to comment Share on other sites More sharing options...
Thatsgreat2345 Posted May 12, 2006 Share Posted May 12, 2006 (edited) Guigetmsg and Guieventmode are not friends you didnt even include guiconstants Edited May 12, 2006 by thatsgreat2345 Link to comment Share on other sites More sharing options...
beestinga Posted May 12, 2006 Author Share Posted May 12, 2006 you didnt even include guiconstantsWhen I said that I didn't know how to use Loops, it was meant to convey that I don't claim to know what I'm doing.Please enlighten me. Link to comment Share on other sites More sharing options...
beestinga Posted May 12, 2006 Author Share Posted May 12, 2006 replaced While 1 $msg = GUIGetMsg() If $msg = $GUI_EVENT_CLOSE Then ExitLoop Wend with While 1 Sleep(1000) ; Idle around WEnd same problem Link to comment Share on other sites More sharing options...
Thatsgreat2345 Posted May 12, 2006 Share Posted May 12, 2006 try this #include <GUIConstants.au3> $GUI = GuiCreate("Action!",260,100) $hitbutton=GUICtrlCreateButton ("Action 1", 10, 30, 50) $standbutton=GUICtrlCreateButton ( "Action 3", 100, 5) GUISetState() Do $msg = GUIGetMsg() Select Case $msg = $hitbutton MsgBox(0,"Hit Button","You Hit the Action 1 Button") Case $msg = $standbutton MsgBox(0,"Stand Button","You hit the Action 3 Button") EndSelect Until $msg = $GUI_EVENT_CLOSE Link to comment Share on other sites More sharing options...
beestinga Posted May 12, 2006 Author Share Posted May 12, 2006 try this #include <GUIConstants.au3> $GUI = GuiCreate("Action!",260,100) $hitbutton=GUICtrlCreateButton ("Action 1", 10, 30, 50) $standbutton=GUICtrlCreateButton ( "Action 3", 100, 5) GUISetState() Do $msg = GUIGetMsg() Select Case $msg = $hitbutton MsgBox(0,"Hit Button","You Hit the Action 1 Button") Case $msg = $standbutton MsgBox(0,"Stand Button","You hit the Action 3 Button") EndSelect Until $msg = $GUI_EVENT_CLOSELet me work with this a little bit and see what happens. Thanks! Link to comment Share on other sites More sharing options...
beestinga Posted May 12, 2006 Author Share Posted May 12, 2006 (edited) this fixed my problem. On the agenda for next week: getting less retarded at this Thanks a ton for your help. Edited May 12, 2006 by beestinga Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now