andygo Posted January 15, 2011 Share Posted January 15, 2011 (edited) hello, i have a script where i add always data to a combo.with lets say 50 datafields i can scroll and choose each data i want.now i have 128 datafields and if i try to choose one, no matter if i try with mouse or arrow-keys, i cant choose. the combo close very fast without changing data.is 128 combo-entries maybe too much? Edited January 15, 2011 by andygo Link to comment Share on other sites More sharing options...
PsaltyDS Posted January 15, 2011 Share Posted January 15, 2011 (edited) is 128 combo-entries maybe too much? Hardly. #include <GUIConstantsEx.au3> GUICreate("My GUI combo", 300, 300) ; will create a dialog box that when displayed is centered $idCombo = GUICtrlCreateCombo("<Select IPv4 Address>", 20, 20) ; create first item For $n = 1 To 254 GUICtrlSetData($idCombo, "192.168.0." & $n) Next GUISetState() While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE Exit Case $idCombo If GUICtrlRead($idCombo) <> "<Select IPv4 Address>" Then MsgBox(64, "Selection", GUICtrlRead($idCombo)) EndSwitch WEnd The demo presents 255 items. There is some limit, and I'm not sure what it is, but it would be more like 4K, 16K, or 32K items not just a couple hundred. Edit: You could change the loop like this to get 64K items: For $m = 0 To 255 $sData = "192.168." & $m & ".0|" For $n = 1 To 255 $sData &= "1921.68." & $m & "." & $n & "|" Next GUICtrlSetData($idCombo, $sData) Next Now it takes like 20sec to populate on my laptop, and the list is awkward to scroll through. So you have to decide when it becomes too painful for the user - and you still haven't hit an upper limit. Edited January 15, 2011 by PsaltyDS Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law Link to comment Share on other sites More sharing options...
Bowmore Posted January 15, 2011 Share Posted January 15, 2011 128 or 256 is certainly no where near the limit (I don't know exactly what it is) but I have used combo-box / Drop-down lists in AutoIt with over 1,000,000 items in it and had no problems selecting specific items. It did however take a couple of minutes to populate. So I would suggest that the problem lies elsewhere in your code. If you could post the section of your code that populates and reads the combo, someone may be able to spot what is causing the problem. "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning."- Rick Cook Link to comment Share on other sites More sharing options...
andygo Posted January 15, 2011 Author Share Posted January 15, 2011 hello, thanks for the replies. meanwhile the problem isnt present anymore, whyever... i think it was because of a wrong-defined variable for a functioncall. mabye a special order of some steps caused it. i have to take a look at it. regards, andy 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