Eru Posted March 31, 2007 Posted March 31, 2007 I have a code that lets me save alternate configuration settings to a .ini file. It writes to the ini like so: Quote [settings] Options=Option1|Option2| Option1= zzz Option2= xxx When I save a new setting, it appends the name of it to the Options key, and adds the value to the end. I use a combo box ($Settings) to pick between the options. When It's saved, i use the GUICtrlSetData command to reset the combo box with the options. Problem is, when I use GuiCtrlSetData on it, it keeps all the old options, then adds the new ones. For instance, if I added Option3=yyy my combo box would look like this: Quote Option1 Option2 Option1 Option2 Option3 If i close the program and restart it, the combo displays correctly. Is there a way to clear the data that's in the combo box, and then reassign the data to it like i've been doing? Or am I going to have to make a wierd workaround for it? :/ Thanks everyone
Eru Posted March 31, 2007 Author Posted March 31, 2007 Nevermind, I've found a workaround. I just GUICtrlDelete the control, the remake it and reassign it.
GEOSoft Posted March 31, 2007 Posted March 31, 2007 (edited) Eru said: Nevermind, I've found a workaround. I just GUICtrlDelete the control, the remake it and reassign it. Use A pipe character ("|") at the begining of the GUICtrlSetData string'GUICtrlSetData($MyCombo, "|" & $MyList)ORGUICtrlSetData($MyCombo,'')GUICtrlSetData($MyCombo,$MyList)The method you used is not good. It may work this time but if you used something likeAssume your combo is $Ctrl4For $I = $Ctrl1 To $Ctrl7 GUICtrlSetState($I,144)NextThen when you delete and recreate $Ctrl4 it will be created at the bottom of your GUICtrls and will no longer be in the For/Next loop so it would not get disabled with the rest Edited March 31, 2007 by GEOSoft George Reveal hidden contents Question about decompiling code? Read the decompiling FAQ and don't bother posting the question in the forums.Be sure to read and follow the forum rules. -AKA the AutoIt Reading and Comprehension Skills test.*** The PCRE (Regular Expression) ToolKit for AutoIT - (Updated Oct 20, 2011 ver:3.0.1.13) - Please update your current version before filing any bug reports. The installer now includes both 32 and 64 bit versions. No change in version number. Visit my Blog .. currently not active but it will soon be resplendent with news and views. Also please remove any links you may have to my website. it is soon to be closed and replaced with something else. "Old age and treachery will always overcome youth and skill!"
Eru Posted April 1, 2007 Author Posted April 1, 2007 mmm you have a good point. I'll go back into the script and play with it to see if I can improve my technique. Thanks for the tip!
TunaSalad Posted June 7, 2007 Posted June 7, 2007 GEOSoft said: Use A pipe character ("|") at the begining of the GUICtrlSetData string'GUICtrlSetData($MyCombo, "|" & $MyList)ORGUICtrlSetData($MyCombo,'')GUICtrlSetData($MyCombo,$MyList)The method you used is not good. It may work this time but if you used something likeAssume your combo is $Ctrl4For $I = $Ctrl1 To $Ctrl7 GUICtrlSetState($I,144)NextThen when you delete and recreate $Ctrl4 it will be created at the bottom of your GUICtrls and will no longer be in the For/Next loop so it would not get disabled with the restI was facing a similar problem with a combo and that pipe trick did the job!Thanks GeoSoft! Why crabs don't give money to charity..... because they are shell-fish!! PS: Don't be a crab and share your scripts with the community! ;-)
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