wxpython - wx Python Gui start up too slow? -


the code below quite incomplete. want check stuff errors.... thing when compile it.... nothing happens after starts up. did wrong here? check task manager , see in background, gui never pops up.

from wx import * import order o import orderitem oi import customer c import item class ordermain ( wx.frame ):      def __init__( self, parent ):             wx.frame.__init__ ( self, parent, id = wx.id_any, title = u"orders", pos = wx.defaultposition, size = wx.size( 517,486 ), style = wx.default_frame_style|wx.tab_traversal )              self.setsizehintssz( wx.size( -1,-1 ), wx.defaultsize )              bsizer3 = wx.boxsizer( wx.vertical )              #create order item here             self.ord = o.order()              self.list = wx.listctrl( self, wx.id_any, wx.defaultposition, wx.defaultsize, wx.lc_report )             self.list.setminsize( wx.size( 500,300 ) )             self.list.setmaxsize( wx.size( 1000,800 ) )             self.list.insertcolumn(0,"order id")             self.list.insertcolumn(1,"customer id")             self.list.insertcolumn(2,"order price")             self.list.insertcolumn(3,"order date")             self.list.bind(evt_list_item_selected,self.getselecteditems)             self.refresh_list(none)             bsizer3.add( self.list, 0, wx.all|wx.align_center_horizontal, 5 )              bsizer4 = wx.boxsizer( wx.horizontal )              self.m_button20 = wx.button( self, wx.id_any, u"add order", wx.defaultposition, wx.defaultsize, 0 )             self.m_button20.bind(wx.evt_button, self.add_entry)             bsizer4.add( self.m_button20, 1, wx.all|wx.align_center_vertical, 5 )              self.m_button21 = wx.button( self, wx.id_any, u"update record", wx.defaultposition, wx.defaultsize, 0 )             self.m_button21.bind(wx.evt_button, self.show_entry)             bsizer4.add( self.m_button21, 1, wx.align_center_vertical|wx.all, 5 )              bsizer3.add( bsizer4, 1, wx.expand, 5 )              self.setsizer( bsizer3 )             self.layout()              self.centre( wx.both )      def refresh_list(self, event):         """place names of each itementry list"""          self.index = 0         self.entrydict = {}         self.list.deleteallitems()         entry in self.ord.list_entries():             self.list.insertstringitem(self.index,entry.order_id)             self.list.setstringitem(self.index,1,entry.cust_id)             self.list.setstringitem(self.index,2,str(entry.order_price))             self.list.setstringitem(self.index,3,str(entry.order_date))             self.entrydict[self.index] = entry             self.index += 1       def getselecteditems(self, event):         """    gets selected items list control.         selection returned list of selected indices,         low high.         """         selection = []         self.index = self.list.getfirstselected()         selection.append(self.index)         while len(selection) != self.list.getselecteditemcount():             self.index = self.list.getnextselected(self.index)             selection.append(self.index)          return self.index       def add_entry(self, event):         """add new entry order_date ite"""         # start out blank, generic itementry         entry = o.orderentry("","","0","")         self.endiag = orderdetail(self,entry)         self.endiag.showmodal()                       self.ord.add_entry(entry.order_id,                             entry.cust_id,                             str(entry.order_price),                             str(entry.order_date) )          self.refresh_list(none)      def show_entry(self, event):         """updates details of selected entry"""         e_id = self.index         entry = self.ord.list_entries()[e_id]         self.endiag2 = orderdetailu(self , entry)         self.endiag2.showmodal()          self.refresh_list(none)      def __del__( self ):             pass   class orderdetail ( wx.dialog ):      def __init__( self, parent ,entry):             wx.dialog.__init__ ( self, parent, id = wx.id_any, title = u"order details", pos = wx.defaultposition, size = wx.size( 500,500 ), style = wx.default_dialog_style )              self.setsizehintssz( wx.size( 500,500 ), wx.defaultsize )             self.entry = entry             bsizer22 = wx.boxsizer( wx.vertical )             self.ordite = oi.orderitem()             self.cust = c.customer()             gsizer6 = wx.gridsizer( 2, 2, 0, 0 )             self.ordite=oi.orderitem()              self.m_statictext28 = wx.statictext( self, wx.id_any, u"order id", wx.defaultposition, wx.defaultsize, 0 )             self.m_statictext28.wrap( -1 )             gsizer6.add( self.m_statictext28, 0, wx.all|wx.align_center_vertical|wx.align_center_horizontal, 5 )              self.order_id = wx.textctrl( self, wx.id_any, wx.emptystring, wx.defaultposition, wx.defaultsize,te_process_enter )             self.order_id.bind(evt_list_item_selected, self.setid)             self.order_id.setminsize( wx.size( 200,-1 ) )              gsizer6.add( self.order_id, wx.all|wx.align_center_horizontal|wx.align_center_vertical, 5 )              self.m_statictext29 = wx.statictext( self, wx.id_any, u"customer", wx.defaultposition, wx.defaultsize, 0 )             self.m_statictext29.wrap( -1 )             gsizer6.add( self.m_statictext29, 0, wx.all|wx.align_center_vertical|wx.align_center_horizontal, 5 )              m_choice1choices = self.cust.list_entries()             self.cust_id = wx.choice( self, wx.id_any, wx.defaultposition, wx.size( 200,-1 ), m_choice1choices, 0 )             self.cust_id.setselection( 0 )             gsizer6.add( self.cust_id, 0, wx.all|wx.align_center_vertical|wx.align_center_horizontal, 5 )              self.m_statictext18 = wx.statictext( self, wx.id_any, u"order price", wx.defaultposition, wx.defaultsize, 0 )             self.m_statictext18.wrap( -1 )             gsizer6.add( self.m_statictext18, 0, wx.all|wx.align_center_horizontal|wx.align_center_vertical, 5 )              self.computeprice()             self.m_statictext19 = wx.statictext( self, wx.id_any, str(self.entry.order_price), wx.defaultposition, wx.defaultsize, 0 )             self.m_statictext19.wrap( -1 )             gsizer6.add( self.m_statictext19, 0, wx.all|wx.align_center_horizontal|wx.align_center_vertical, 5 )               self.m_statictext33 = wx.statictext( self, wx.id_any, u"date", wx.defaultposition, wx.defaultsize, 0 )             self.m_statictext33.wrap( -1 )             gsizer6.add( self.m_statictext33, 0, wx.all|wx.align_center_horizontal|wx.align_center_vertical, 5 )              self.order_date = wx.datepickerctrl( self, wx.id_any, wx.defaultdatetime, wx.defaultposition, wx.defaultsize, wx.dp_default )             gsizer6.add( self.order_date, 0, wx.all|wx.align_center_vertical|wx.align_center_horizontal, 5 )               bsizer22.add( gsizer6, 1, wx.expand, 5 )              bsizer24 = wx.boxsizer( wx.vertical )              self.m_statictext32 = wx.statictext( self, wx.id_any, u"items", wx.defaultposition, wx.defaultsize, 0 )             self.m_statictext32.wrap( -1 )             bsizer24.add( self.m_statictext32, 0, wx.all|wx.align_center_horizontal, 5 )              self.list2 = wx.listctrl( self, wx.id_any, wx.defaultposition, wx.size( -1,100 ), wx.lc_report|wx.lc_sort_descending )             self.list2.insertcolumn(0,"item id")             self.list2.insertcolumn(1,"item price")             self.list2.insertcolumn(2,"item qty")             self.list2.bind(evt_list_item_selected,self.getselecteditems2)             self.refresh_list2(none)             bsizer24.add( self.list2, 0, wx.expand|wx.all|wx.align_center_horizontal, 5 )              gsizer7 = wx.gridsizer( 2, 2, 0, 0 )              self.m_button17 = wx.button( self, wx.id_any, u"add item", wx.defaultposition, wx.size( 100,-1 ), 0 )             gsizer7.add( self.m_button17, 1, wx.all|wx.align_center_vertical|wx.align_center_horizontal, 5 )              self.m_button18 = wx.button( self, wx.id_any, u"delete item", wx.defaultposition, wx.size( 100,-1 ), 0 )             gsizer7.add( self.m_button18, 0, wx.all|wx.align_center_vertical|wx.align_center_horizontal, 5 )              bsizer24.add( gsizer7, 1, wx.expand, 5 )              bsizer22.add( bsizer24, 1, wx.expand, 5 )              gsizer8 = wx.gridsizer( 2, 2, 0, 0 )              self.m_button19 = wx.button( self, wx.id_any, u"ok", wx.defaultposition, wx.size( 100,-1 ), 0 )             gsizer8.add( self.m_button19, 0, wx.all|wx.align_center_horizontal, 5 )              self.m_button20 = wx.button( self, wx.id_any, u"cancel", wx.defaultposition, wx.size( 100,-1 ), 0 )             gsizer8.add( self.m_button20, 0, wx.all|wx.align_center_horizontal, 5 )              bsizer22.add( gsizer8, 1, wx.expand, 5 )              self.setsizer( bsizer22 )             self.layout()              self.centre( wx.both )      def setid(self, event):             entry.order_id = str(self.order_id.getvalue())              return self.order_id       def closedial(self,event):         """closes dialog"""         self.destroy()      def computeprice(self,event):          entry in self.ordite.list_entries():                 if self.ordite.orderitementry.order_id == self.entry.order_id:                         self.entry.order_price = self.entry.order_price + self.ordite.orderitementry.item_price          return self.entry.order_price     def refresh_list2(self, event):         """place names of each itementry list"""          self.index2 = 0         self.entrydict = {}         self.list2.deleteallitems()         entry in self.ordite.list_entries():                 if self.ordite.orderitementry.order_id==self.entry.order_id:                     self.list2.insertstringitem(self.index,entry.order_id)                     self.list2.setstringitem(self.index,1,entry.item_id)                     self.list2.setstringitem(self.index,2,str(entry.item_price))                     self.list2.setstringitem(self.index,3,str(entry.item_qty))                     self.entrydict[self.index2] = entry                     self.index2 += 1       def getselecteditems2(self, event):         """    gets selected items list control.         selection returned list of selected indices,         low high.         """         selection2 = []         self.index2 = self.list2.getfirstselected()         selection.append(self.index2)         while len(selection2) != self.list2.getselecteditemcount():             self.index = self.list2.getnextselected(self.index2)             selection2.append(self.index2)          return self.index2       def add_item(self, event):         """add new entry order_date ite"""         # start out blank, generic entry         entryit = oi.orderitementry("","","","")         self.endiag = additemorder(self,entryit)         self.endiag.showmodal()                       self.ordite.add_entry(entry.order_id,                             entry.cust_id,                             str(entry.order_price),                             str(entry.order_date) )          self.refresh_list(none)      def ok(self, event):         """sets details of current entry"""         self.entry.set_details( str(self.order_id.getvalue()),                             str(self.cust_id.getvalue()),                             str(self.order_price.getvalue()),                             str(self.order_date) )         self.destroy()      def __del__( self ):             pass   class additemorder ( wx.dialog ):      def __init__( self, parent,entryit ):             wx.dialog.__init__ ( self, parent, id = wx.id_any, title = u"add item", pos = wx.defaultposition, size = wx.size( 285,173 ), style = wx.default_dialog_style )             self.entryit = entryit             self.setsizehintssz( wx.defaultsize, wx.defaultsize )              bsizer25 = wx.boxsizer( wx.vertical )              gsizer9 = wx.gridsizer( 2, 2, 0, 0 )              self.m_statictext34 = wx.statictext( self, wx.id_any, u"item id", wx.defaultposition, wx.defaultsize, 0 )             self.m_statictext34.wrap( -1 )             gsizer9.add( self.m_statictext34, 0, wx.all|wx.align_center_horizontal|wx.align_center_vertical, 5 )              m_choice2choices = i.list_entries()             self.item_id = wx.choice( self, wx.id_any, wx.defaultposition, wx.defaultsize, m_choice2choices, 0 )             self.item_id.setselection( 0 )             gsizer9.add( self.item_id, 0, wx.all|wx.align_center_vertical|wx.align_center_horizontal, 5 )              self.m_statictext35 = wx.statictext( self, wx.id_any, u"item qty", wx.defaultposition, wx.defaultsize, 0 )             self.m_statictext35.wrap( -1 )             gsizer9.add( self.m_statictext35, 0, wx.all|wx.align_center_horizontal|wx.align_center_vertical, 5 )              self.item_qty = wx.textctrl( self, wx.id_any, wx.emptystring, wx.defaultposition, wx.size( 120,-1 ), 0 )             gsizer9.add( self.item_qty, 0, wx.all|wx.align_center_horizontal|wx.align_center_vertical, 5 )              bsizer25.add( gsizer9, 1, wx.expand, 5 )              self.m_button19 = wx.button( self, wx.id_any, u"ok", wx.defaultposition, wx.defaultsize, 0 )             bsizer25.add( self.m_button19, 0, wx.all|wx.align_center_horizontal|wx.expand, 5 )              self.setsizer( bsizer25 )             self.layout()              self.centre( wx.both )      def __del__( self ):             pass   def main():      ex = wx.app()     ordermain(none)     ex.mainloop()       if __name__ == '__main__':     main() 

you need show frame:

def main():      ex = wx.app()     frame = ordermain(none)     ex.settopwindow(frame)     frame.show()     ex.mainloop()   

Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -