progress bar / busyinfo

Hi All,

I have a simple GUI with a combobox which choices are being read from a file.

while reading the file and updating the choices, i want to have a progress bar to indicate that the GUI is not “Dead”. (the choices are list of 5000-10000 values read from file which takes quite a long time).

i tried the wx.busyinfo but it gives no indication that the app is not stuck. i also tried wx.Gauge with timer events, but, it starts working only after the app has finished processing the data…

Any suggestions?

Thanks,

Roy.

···

Express yourself instantly with MSN Messenger! MSN Messenger

ROY ZINN wrote:

Thanks,
The thing is that it takes the GUI thread a long time to create the combo box with thousands of choices.
the combo box is being build after reading the file and getting all data necessary. i would like to indicate that the GUI is not dead while creating the combo box on the fly. i use self.Layout after arranging the combobox and this takes quite a long time.

First of all, a wx.ComboBox is a real bad UI design choice when there are that many items, most (all?) of the human interaction guides suggest that a combo shouldn't have more than a few dozen choices.

In addition to the other suggestions you might want to think about using a listctrl in virtual mode. Then you can allow the user to see more items at once, scroll easily to where they need to get to, and also be actively showing the first pages of data while the later pages are still being loaded into your data structure from a background thread.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!