Sign in to follow this  
Followers 0
PartyPooper

GUICtrlCreateListViewItem

7 posts in this topic

It seems I've bumped up against an AutoIt limit - (GUI_MAXCONTROLS 65532) when trying to create a ListView with slightly more than 185,000 items. It appears each listviewitem becomes a control and my program borks at 65532 controls on one GUI. Does the beta have this limit as well? If so, am I able to get around this problem using the UDF _GUICtrlListView_... commands rather than the native AutoIt ones?

Also, is this limitation in AutoIt for good, or will it possibly be changed sometime in the future?

Cheers.

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

Yes, the beta has this limit. The limit was increased from 4093 in v3.2.12.0, so the possibility of change probably isn't completely ruled out, but I wouldn't count on it happening either. That said, yes, the UDF-created controls don't count toward the AutoIt control limit.

Edited by -Ultima-

[ WinINet.au3 | Array.au3 (Optimized) | _UnixTimeParse() ]

Share this post


Link to post
Share on other sites

Cool thanks Ultima. Now I just got to figure out how to use them (this is my first foray into Listview territory).

Share this post


Link to post
Share on other sites

It seems I've bumped up against an AutoIt limit - (GUI_MAXCONTROLS 65532) when trying to create a ListView with slightly more than 185,000 items. It appears each listviewitem becomes a control and my program borks at 65532 controls on one GUI. Does the beta have this limit as well? If so, am I able to get around this problem using the UDF _GUICtrlListView_... commands rather than the native AutoIt ones?

Also, is this limitation in AutoIt for good, or will it possibly be changed sometime in the future?

Cheers.

Let me ask you this, when have you ever seen a program or webpage display that much information to the user at once? Your scrollbars become useless when moving one pixel jumps 200 records. Does Google show all 1,000,000 of your results at once?

You need to figure out a form of recordset pagination. Let the user choose the number of records to show on a given page and have controls to jump Back/Next + Last/First.

Share this post


Link to post
Share on other sites

Let me ask you this, when have you ever seen a program or webpage display that much information to the user at once? Your scrollbars become useless when moving one pixel jumps 200 records. Does Google show all 1,000,000 of your results at once?

You need to figure out a form of recordset pagination. Let the user choose the number of records to show on a given page and have controls to jump Back/Next + Last/First.

I totally agree. If you would work in a cs architecture your performance is unacceptable. Try to create something (I call) filter/slicing and then just show ~ 20 rows with these buttons <<-- <-- --> -->> and a jump to row nr. X field.

So long,

Mega


Scripts & functions Organize Includes Let Scite organize the include files

Yahtzee The game "Yahtzee" (Kniffel, DiceLion)

LoginWrapper Secure scripts by adding a query (authentication)

_RunOnlyOnThis UDF Make sure that a script can only be executed on ... (Windows / HD / ...)

Internet-Café Server/Client Application Open CD, Start Browser, Lock remote client, etc.

MultipleFuncsWithOneHotkey Start different funcs by hitting one hotkey different times

Share this post


Link to post
Share on other sites

It's not a webpage, more along the lines of a listview database, so yes, it needed to display and scroll through the lot. That said, you don't have to use the scroll bars, you can move up/down one line at a time using the arrow keys for precise viewing. Believe it or not, the only "slow" part was actually loading the data into the listview in the first place. Once there, scrolling is very fast as was data access (well, up to the 64,000+ records I had visible anyway). The problem isn't with loading or displaying, it is with the number of records (controls) allowed on one GUI. Because it is not possible in AutoIt to display all the records I would like, I'm having to rethink the approach. Pagination, while a practical solution, adds an amount of complexity I'm not willing to undertake as yet because each listview item when clicked activated a popup GUI displaying additional information.

Thanks for your ideas anyway.

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0