_Kurt Posted June 9, 2007 Posted June 9, 2007 (edited) (Update June 24th 07) - Fixed several minor bugs - Fixed variable bug - Added Coordinate Tooltip (Update June 10th 07) - Fixed 3 bugs - Added Drag Menu Although no one even took a look at this project, I will continue to work on it for my own interest. With only 25 downloads, it makes me wonder why I even bother posting this. Anyways, new update includes optional coordinate tooltips, controlled dragging through menuitem, and fixed plenty of bugs so it will work with more scripts! Also, if you only want to organize a gui within a large script, use the new #region Gorganize & #endregion Gorganize method. I'd really appreciate it if anyone could post me some scripts that do not seem to work. Description: Having trouble organizing or placing controls on a GUI? Once the file is loaded, the Gorganizer will make your controls draggable and resizable. When you're done shifting your controls, it will generate a new script, exactly like your old one, but containing the new coordinates and sizes of your controls. Hello, Throughout all my scripting days, I've always had difficulty finding the perfect coordinates for my GUI. Changing coords & sizes, ALT+F5.. Changing coords & sizes, ALT+F5.. It always took me several tests before I could get my desired coordinates and sizes. The Gorganizer Although the name may seem like some sort of scary monster, it's not. Couldn't think of a better name, but I called it the Gorganizer since it's a Gui organizer. I think it could be a great addition to the GuiBuilder. Run the script, choose your .au3 file (containing a GUI), click Gorganize, and voila! It will then run your script with draggable and resizable controls. Once you've finished organizing your GUI, simply exit and it will write a new file, exactly the same as it was before, but with your new coordinates. Remember that this script cannot overwrite or modify your original chosen script! EXAMPLE SCRIPT (save file & run through script): #include <GUIConstants.au3> GuiCreate("Test") ;Notice thatÈÚ[ÝH[ÛYYYHÈHXÝ]HÈHÜYÚ[ÛÛÜØ[^¤wV6WE7FFR´¶VWâÖæBFBFR7&VvöâÖWFöB2æ÷BÖæFF÷' ¢7&¥½¸½É¹¥é)1½°ÀÌØíÑÍÑlÍtíÉÉäÙÉ¥±ÌÉÁÑÌÌì(ÀÌØGUI1 = GuiCreate("MyGUI") $test[1] = GUICtrlCreateLabel(&quoÝÝX[^H][ÝËLL BÌÍÝÝÌHHÕRPÝÜX]S&VÂgV÷C·FW7DÆ&VÃ"gV÷C²Â#Â#Â#ÂC¢b33c·FW7FçWBÒuT7G&Ä7Ñ%¹ÁÕÐ ÅÕ½ÐíÑÍÑ%¹ÁÕÐÅÕ½Ðì°ÈÀÀ°Ô°àÀ°ÈÀ¤(ÀÌØíÑÍÑÕÑѽ¸ôU% ÑɱreateButton("testButton", 0, 200, 80, 25) GUISetState() #endregioÛÜØ[^BÚ[HB ÌÍÛÙÈHÕRQÙ]ÙÊ BY ÌÍÛÙÈH ÌÍÑÕôUdTåEô4Äõ4RFVâWDÆö÷¥tVæoÝ÷ Øú,²&åx[º·y«nëÚ?Eçh2Þ¸²Úâäè¢[b¥Ë«éír+v)Úµë?²ÚâæÀ1ý°®®·§´¸¦Öì"Ü"Z'*®¢ÚbrK©ªê-¶»-{-jw¡ñ *Þj×¢*.«Þém^B7öȧʫ±Êâ¦Ú'+ayø«²Ñ!©ÝÝý±Ê'¶º%³¥ªiyªÀÊ&ÊÇ+BÓNM·¢jbçm¡©ÞÅì(mÂä"Ü"Z'(+i»ayÊ'¶º%²ØZµªÞuç%j·o&¯j¸nWçèZ0x0YZÊ'¢Ü(®FÞq«¬zØ^è¬)iǬmëpyéíëÚ®&æ§vØ^z«È «¢+ØÀÌØí5åYÈõU% Ñɱ ÉÑ1° ÅÕ½ÐíÑÍÐÅÕ½Ðì°À°À°ÈÀÀ°ÈÀ¤ì (ÀÌØí5åYr = GUICtrlCreateLabel("test",0,0,200,20) ; GOOD Current Bugs/Errors: [Please Read] - If you have a variable within your GUICtrlCreate(?) line, it will not work. FIXED - Scripts that contain GUICtrlCreateObj will not work. FIXED - GUICtrlCreate*("," ... Any comma within the controls data will not work. FIXED - GUICtrlCreate*("( )" ... Any bracket within the controls data will not work. FIXED I hope it works for most of your scripts, post any scripts that do not work, or any comments, suggestions, or errors. I apologize for not commenting the script, but looking over it even I am somewhat confused . Thanks, Kurt PS: also attached my original project that contains a draggable & resizable control incase anyone is interested.GUIDragNResize.au3Gorganizer.au3 Edited June 24, 2007 by _Kurt Awaiting Diablo III..
SleepyXtreme Posted June 9, 2007 Posted June 9, 2007 This seems like a very good project for extending gui builder. I'd like to make a few suggestions. Try modeling it after other design/art programs because other programs have developed really nice ways of doing things. For instance, photoshop has the possibility to save the last 100+ moves to undo til with a history list, you can also move all the objects by using the arrows keys. Also, the grid is MUCH smaller so that you can evenly fit everything while still lining it up. Another good solution that's in Adobe Flash is to center, allign right, allign left, with objects; this is probably the most useful idea that would make making gui's easier and neater. Thanks for reading
_Kurt Posted June 9, 2007 Author Posted June 9, 2007 Yes, Undo/Redo is very possible, an array and some work ought to do it. I will add that in sooner or later. Kurt Awaiting Diablo III..
_Kurt Posted June 9, 2007 Author Posted June 9, 2007 (edited) Yepee, 2 more bugs found, see first post. Will try to resolve them ASAP, sorry for the inconvenience. FIXEDKurt Edited June 24, 2007 by _Kurt Awaiting Diablo III..
martin Posted June 9, 2007 Posted June 9, 2007 Throughout all my scripting days, I've always had difficulty finding the perfect coordinates for my GUI. Changing coords & sizes, ALT+F5.. Changing coords & sizes, ALT+F5.. It always took me several tests before I could get my desired coordinates and sizes.Does this mean you haven't looked at Koda? Serial port communications UDF Includes functions for binary transmission and reception.printing UDF Useful for graphs, forms, labels, reports etc.Add User Call Tips to SciTE for functions in UDFs not included with AutoIt and for your own scripts.Functions with parameters in OnEvent mode and for Hot Keys One function replaces GuiSetOnEvent, GuiCtrlSetOnEvent and HotKeySet.UDF IsConnected2 for notification of status of connected state of many urls or IPs, without slowing the script.
_Kurt Posted June 9, 2007 Author Posted June 9, 2007 Yes, of course I have, but the problem is that you cannot load a GUI from it, and also the GuiBuilder has a permanent 10x10 scale, sometimes I need coordinates to be precise. I find this could be a powerful and useful tool because I'm sure other people have the same problem.. Kurt Awaiting Diablo III..
Toady Posted June 9, 2007 Posted June 9, 2007 Nice. I like this idea. I got an error when trying to give it a GUI that is created via for loops. Is this supposed to only work with very basic layout? www.itoady.com A* (A-star) Searching Algorithm - A.I. Artificial Intelligence bot path finding
RazerM Posted June 9, 2007 Posted June 9, 2007 (edited) I like the idea, i noticed you pass /ErrorStdOut to autoit exe and use StdoutRead (should be StderrRead?) with the PID but don't use $STDERR_CHILD. Edited June 9, 2007 by RazerM My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.
_Kurt Posted June 9, 2007 Author Posted June 9, 2007 (edited) Nice. I like this idea. I got an error when trying to give it a GUI that is created via for loops. Is this supposed to only work with very basic layout?It should work with any script containing a GUI. If a GUICtrlCreate* contains a variable within it, example: $var = GUICtrlCreateLabel("Label", 0, 0, 100+$x, 200) This won't work because of the +$x. I'm just about done fixing 2 errors, I will update it within the next 2 days. My To-Do list is currently pretty full, and I'm short on spare time. FIXED I like the idea, i noticed you pass /ErrorStdOut to autoit exe and use StdoutRead (should be StderrRead?) with the PID but don't use $STDERR_CHILD.I tested a script with a mistake in it using StderrRead, and it didn't return anything, I then tried StdoutRead and it worked marvelously. Kurt Edited June 24, 2007 by _Kurt Awaiting Diablo III..
RazerM Posted June 9, 2007 Posted June 9, 2007 (edited) You cannot read from stdout or stderr stream without using $STDOUT_CHILD or $STDERR_CHILD respectively for the standard i/o flag. Edited June 9, 2007 by RazerM My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.
martin Posted June 9, 2007 Posted June 9, 2007 Yes, of course I have, but the problem is that you cannot load a GUI from it, and also the GuiBuilder has a permanent 10x10 scale, sometimes I need coordinates to be precise. I find this could be a powerful and useful tool because I'm sure other people have the same problem..KurtGood luck with this project. I think you should aim, as you said, to produce something better than is available. Koda for example has got shortcomings but not the ones you describe.(I think you must be thinking of some other program) It can import au3 scripts, set the grid from 1 pixel upwards, align groups of controls in just about any way you want, move and resize using the arrow keys or by property values etc. Have a look at it to get a good idea of what you need to achieve. Serial port communications UDF Includes functions for binary transmission and reception.printing UDF Useful for graphs, forms, labels, reports etc.Add User Call Tips to SciTE for functions in UDFs not included with AutoIt and for your own scripts.Functions with parameters in OnEvent mode and for Hot Keys One function replaces GuiSetOnEvent, GuiCtrlSetOnEvent and HotKeySet.UDF IsConnected2 for notification of status of connected state of many urls or IPs, without slowing the script.
_Kurt Posted June 10, 2007 Author Posted June 10, 2007 (edited) Good luck with this project. I think you should aim, as you said, to produce something better than is available. Koda for example has got shortcomings but not the ones you describe.(I think you must be thinking of some other program) It can import au3 scripts, set the grid from 1 pixel upwards, align groups of controls in just about any way you want, move and resize using the arrow keys or by property values etc. Have a look at it to get a good idea of what you need to achieveI really appreciate the feedback, martin. You're right, I was confusing the Koda from another program.Kurt Edited June 24, 2007 by _Kurt Awaiting Diablo III..
_Kurt Posted June 10, 2007 Author Posted June 10, 2007 New Update, Fixed 3 nasty bugs, Added menu. With some free time here and there, I will try to add my ideas for future features. If you have any script that aren't working, and the bug has not yet been reported, please post them. Kurt Awaiting Diablo III..
martin Posted June 10, 2007 Posted June 10, 2007 I really appreciate the feedback, martin. You're right, I was confusing the Koda from another program, and once I actually checked out the Koda, it made me realize that this program would be useless since the Koda is simply amazing. Unfortunately, I will probably discontinue the making of this project soon because of that reason.KurtSorry if I dampened your spirits, but you have taken it very well. I did a similar thing myself. I wrote a script to enable Koda designs to automatically update another script and then the next release of Koda did it but much better. Serial port communications UDF Includes functions for binary transmission and reception.printing UDF Useful for graphs, forms, labels, reports etc.Add User Call Tips to SciTE for functions in UDFs not included with AutoIt and for your own scripts.Functions with parameters in OnEvent mode and for Hot Keys One function replaces GuiSetOnEvent, GuiCtrlSetOnEvent and HotKeySet.UDF IsConnected2 for notification of status of connected state of many urls or IPs, without slowing the script.
_Kurt Posted June 10, 2007 Author Posted June 10, 2007 (edited) Yeah, but I probably will continue updating this project, just for my interest. I am still amazed by Koda, it truly is near flawless.. However the gorganizer could still be very helpful, if you need a quick way to organize, drag, resize your GUI, it's a really easier way to make quick changes. Kurt Edited June 24, 2007 by _Kurt Awaiting Diablo III..
_Kurt Posted June 24, 2007 Author Posted June 24, 2007 Updated Again.. hopefully I will see more than 25 downloads this time Kurt Awaiting Diablo III..
MrCreatoR Posted June 24, 2007 Posted June 24, 2007 (edited) Hi Kurt,I have litle play with it, and i found a bug (he founds me )...after this the control is not moving...and also when you trying to click on the control and then quickly you click on the gui body, and then drag the control, then there is error:P.Shopefully I will see more than 25 downloads this timeLook here on my example post, no one even say a word about it, and only 30 views Edited June 24, 2007 by MsCreatoR Spoiler Using OS: Win 7 Professional, Using AutoIt Ver(s): 3.3.6.1 / 3.3.8.1 AutoIt Russian Community My Work... Spoiler Projects: ATT - Application Translate Tool {new}| BlockIt - Block files & folders {new}| SIP - Selected Image Preview {new}| SISCABMAN - SciTE Abbreviations Manager {new}| AutoIt Path Switcher | AutoIt Menu for Opera! | YouTube Download Center! | Desktop Icons Restorator | Math Tasks | KeyBoard & Mouse Cleaner | CaptureIt - Capture Images Utility | CheckFileSize ProgramUDFs: OnAutoItErrorRegister - Handle AutoIt critical errors {new}| AutoIt Syntax Highlight {new}| Opera Library! | Winamp Library | GetFolderToMenu | Custom_InputBox()! | _FileRun UDF | _CheckInput() UDF | _GUIInputSetOnlyNumbers() UDF | _FileGetValidName() UDF | _GUICtrlCreateRadioCBox UDF | _GuiCreateGrid() | _PathSplitByRegExp() | _GUICtrlListView_MoveItems - UDF | GUICtrlSetOnHover_UDF! | _ControlTab UDF! | _MouseSetOnEvent() UDF! | _ProcessListEx - UDF | GUICtrl_SetResizing - UDF! | Mod. for _IniString UDFs | _StringStripChars UDF | _ColorIsDarkShade UDF | _ColorConvertValue UDF | _GUICtrlTab_CoverBackground | CUI_App_UDF | _IncludeScripts UDF | _AutoIt3ExecuteCode | _DragList UDF | Mod. for _ListView_Progress | _ListView_SysLink | _GenerateRandomNumbers | _BlockInputEx | _IsPressedEx | OnAutoItExit Handler | _GUICtrlCreateTFLabel UDF | WinControlSetEvent UDF | Mod. for _DirGetSizeEx UDF Examples: ScreenSaver Demo - Matrix included | Gui Drag Without pause the script | _WinAttach()! | Turn Off/On Monitor | ComboBox Handler Example | Mod. for "Thinking Box" | Cool "About" Box | TasksBar Imitation Demo Like the Projects/UDFs/Examples? Please rate the topic (up-right corner of the post header: Rating ) * === My topics === * ================================================== ================================================== AutoIt is simple, subtle, elegant. © AutoIt Team
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