edena Posted November 7, 2011 Share Posted November 7, 2011 Hi! I'm really trying to figure this out but it happens to be beyond my understanding so please can anyone help me on this through this illustration. * I want to make (GUI1) to open another (GUI2) when a button is clicked. * GUI2 has 3 input boxes: Input1 for writing text, Input2 for writing URL, Input3 to just write plain text and a button. * When GUI2 button is clicked it then opens another (GUI3), which shows one link in a text form and a text originally written from GUI2 Input3 and also saves GUI3 on the desktop. * The GUI3 button when clicked will go back to GUI2 to create another new file to be saved on the desktop. I really want to see all this happen in one Autoit or .exe file when clicked. The how it looks is below: (GUI1): #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 203, 174, 192, 124) $Button1 = GUICtrlCreateButton("Button1", 64, 72, 75, 25) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd (GUI2): #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 203, 174, 192, 124) $Google = GUICtrlCreateInput("Google", 40, 16, 121, 21) $URL = GUICtrlCreateInput("URL", 40, 56, 121, 21) $text = GUICtrlCreateInput("text", 40, 96, 121, 21) $Button1 = GUICtrlCreateButton("Button1", 64, 136, 75, 25) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd (GUI3): #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 203, 174, 192, 124) $Button1 = GUICtrlCreateButton("Button1", 64, 136, 75, 25) $Label1 = GUICtrlCreateLabel("Google", 72, 32, 56, 24) GUICtrlSetFont(-1, 12, 400, 4, "MS Sans Serif") GUICtrlSetColor(-1, 0x0000FF) GUICtrlSetCursor (-1, 0) $Label2 = GUICtrlCreateLabel("text", 88, 80, 30, 24) GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif") GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Thank You Link to comment Share on other sites More sharing options...
sleepydvdr Posted November 7, 2011 Share Posted November 7, 2011 How about this: expandcollapse popup#include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <ButtonConstants.au3> $Form1 = GUICreate("Form1", 203, 174) $Button1 = GUICtrlCreateButton("Button1", 64, 72, 75, 25) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 _Form2() EndSwitch WEnd Func _Form2() $Form2 = GUICreate("Form1", 203, 174) $Google = GUICtrlCreateInput("Google", 40, 16, 121, 21) $URL = GUICtrlCreateInput("URL", 40, 56, 121, 21) $text = GUICtrlCreateInput("text", 40, 96, 121, 21) $Button2 = GUICtrlCreateButton("Button1", 64, 136, 75, 25) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE GUIDelete($Form2) ExitLoop Case $Button2 _Form3() EndSwitch WEnd EndFunc Func _Form3() $Form3 = GUICreate("Form1", 203, 174) $Button3 = GUICtrlCreateButton("Button1", 64, 136, 75, 25) $Label3 = GUICtrlCreateLabel("Google", 72, 32, 56, 24) GUICtrlSetFont(-1, 12, 400, 4, "MS Sans Serif") GUICtrlSetColor(-1, 0x0000FF) GUICtrlSetCursor(-1, 0) $Label3a = GUICtrlCreateLabel("text", 88, 80, 30, 24) GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif") GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE GUIDelete($Form3) ExitLoop EndSwitch WEnd EndFunc #include <ByteMe.au3> Link to comment Share on other sites More sharing options...
BrewManNH Posted November 7, 2011 Share Posted November 7, 2011 This would be a cleaner way, one While...Wend loop, checking for the correct windows messages in that loop once. Makes it a little easier to figure out how to troubleshoot it down the line. This also disables the previous form (window) so that you don't have multiple copies of the window able to be opened which will cause all sorts of issues with the script. expandcollapse popup#include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <ButtonConstants.au3> Global $Form1 = 999, $Form2 = 999, $Form3 = 999, $Button1 = 999, $Button2 = 999, $Button3 = 999 $Form1 = GUICreate("Form1", 203, 174) $Button1 = GUICtrlCreateButton("Button1", 64, 72, 75, 25) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg(1) Switch $nMsg[1] Case $Form1 Switch $nMsg[0] Case $GUI_EVENT_CLOSE Exit Case $Button1 GUISetState(@SW_DISABLE, $Form1) _Form2() EndSwitch Case $Form2 Switch $nMsg[0] Case $GUI_EVENT_CLOSE GUIDelete($Form2) GUISetState(@SW_ENABLE, $Form1) Case $Button2 GUISetState(@SW_DISABLE, $Form1) GUISetState(@SW_DISABLE, $Form2) _Form3() EndSwitch Case $Form3 Switch $nMsg[0] Case $GUI_EVENT_CLOSE GUIDelete($Form3) GUISetState(@SW_ENABLE, $Form2) EndSwitch EndSwitch WEnd Func _Form2() $Form2 = GUICreate("Form1", 203, 174) $Google = GUICtrlCreateInput("Google", 40, 16, 121, 21) $URL = GUICtrlCreateInput("URL", 40, 56, 121, 21) $text = GUICtrlCreateInput("text", 40, 96, 121, 21) $Button2 = GUICtrlCreateButton("Button1", 64, 136, 75, 25) GUISetState(@SW_SHOW) #endregion ### END Koda GUI section ### EndFunc ;==>_Form2 Func _Form3() $Form3 = GUICreate("Form1", 203, 174) $Button3 = GUICtrlCreateButton("Button1", 64, 136, 75, 25) $Label3 = GUICtrlCreateLabel("Google", 72, 32, 56, 24) GUICtrlSetFont(-1, 12, 400, 4, "MS Sans Serif") GUICtrlSetColor(-1, 0x0000FF) GUICtrlSetCursor(-1, 0) $Label3a = GUICtrlCreateLabel("text", 88, 80, 30, 24) GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif") GUISetState(@SW_SHOW) #endregion ### END Koda GUI section ### EndFunc ;==>_Form3 If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag GudeHow to ask questions the smart way! I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from. Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays. - ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script. - Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label. - _FileGetProperty - Retrieve the properties of a file - SciTE Toolbar - A toolbar demo for use with the SciTE editor - GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI. - Latin Square password generator Link to comment Share on other sites More sharing options...
edena Posted November 7, 2011 Author Share Posted November 7, 2011 WOW! this is brilliant!, Thank you very much Sleepydvdr and BrewManNH I have a question which I think I didn't explained clearly, How do you save GUI3 in a Autoit or .exe file on the desktop when GUI3 button is clicked and to navigate back to GUI2? Thank You 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