Rob Brown-Bayliss wrote: > Hi. > > I need a way to let users pick one of approx 8000 names from a list and > had thought to use a combobox but it is far too slow taking several > seconds to pop up, and scrolling is unusable. > > Does any one have an idea or solution that does not take up too much > screen space. > > here is the code I was usign to load the list: > > custs = self.DB.select("SELECT CAST(Customer_Key as TEXT), > CAST(Name > as Text) FROM Customer Order By Name") > cust_list = > gtk.ListStore(gobject.TYPE_STRING,gobject.TYPE_STRING) > if custs != None: > for c in custs: > n = c[1].strip() > row = (unicode(n),c[0]) > cust_list.append(row) > self.customer.set_model(cust_list) > > > > -- > Rob Brown-Bayliss > > http://globalvillage.sourceforge.net > The world at your finger tips... > >
I would use a gtk.TreeStore() model in a gtk.TreeView() widget. Using the first one or two letters of the name for the tree nodes. Maybe in a Dialog window if there isn't space for the gtk.TreeView() in the GUI. It is possible use a lazy mode and only populate the gtk.TreeStore() as the user clicks on the appropriate nodes. Regards Neil. _______________________________________________ pygtk mailing list pygtk@daa.com.au http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://faq.pygtk.org/