]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/ComboBox.py
EVT_TEXT_ENTER handler on a combobox needs evt.Skip() otherwise the
[wxWidgets.git] / wxPython / demo / ComboBox.py
index 04337e661cf394569beb00f63570a82932127701..e1335dbe3d4f63f00386dbc38fa9b70acbf30543 100644 (file)
@@ -35,24 +35,23 @@ class TestComboBox(wx.Panel):
         cb.Bind(wx.EVT_SET_FOCUS, self.OnSetFocus)
         cb.Bind(wx.EVT_KILL_FOCUS, self.OnKillFocus)
 
         cb.Bind(wx.EVT_SET_FOCUS, self.OnSetFocus)
         cb.Bind(wx.EVT_KILL_FOCUS, self.OnKillFocus)
 
-        # Once the combobox is set up, we append some more data to it.
+        # Once the combobox is set up, we can append some more data to it.
         cb.Append("foo", "This is some client data for this item")
 
         # This combobox is created with no values initially.
         cb = wx.ComboBox(
         cb.Append("foo", "This is some client data for this item")
 
         # This combobox is created with no values initially.
         cb = wx.ComboBox(
-            self, 501, "default value", (90, 80), (95, -1), [], wx.CB_SIMPLE)
+            self, 501, "default value", (90, 80), (95, -1), [], wx.CB_DROPDOWN)
 
         # Here we dynamically add our values to the second combobox.
         for item in sampleList:
             cb.Append(item, item.upper())
 
         self.Bind(wx.EVT_COMBOBOX, self.EvtComboBox, cb)
 
         # Here we dynamically add our values to the second combobox.
         for item in sampleList:
             cb.Append(item, item.upper())
 
         self.Bind(wx.EVT_COMBOBOX, self.EvtComboBox, cb)
-        self.Bind(wx.EVT_COMBOBOX, self.EvtText, cb)
 
 
-    # The user selects something, we go here.
+    # When the user selects something, we go here.
     def EvtComboBox(self, evt):
         cb = evt.GetEventObject()
     def EvtComboBox(self, evt):
         cb = evt.GetEventObject()
-        data = cb.GetClientData(cb.GetSelection())
+        data = cb.GetClientData(evt.GetSelection())
         self.log.WriteText('EvtComboBox: %s\nClientData: %s\n' % (evt.GetString(), data))
 
         if evt.GetString() == 'one':
         self.log.WriteText('EvtComboBox: %s\nClientData: %s\n' % (evt.GetString(), data))
 
         if evt.GetString() == 'one':
@@ -61,11 +60,13 @@ class TestComboBox(wx.Panel):
     # Capture events every time a user hits a key in the text entry field.
     def EvtText(self, evt):
         self.log.WriteText('EvtText: %s\n' % evt.GetString())
     # Capture events every time a user hits a key in the text entry field.
     def EvtText(self, evt):
         self.log.WriteText('EvtText: %s\n' % evt.GetString())
+        evt.Skip()
 
     # Capture events when the user types something into the control then
     # hits ENTER.
     def EvtTextEnter(self, evt):
         self.log.WriteText('EvtTextEnter: %s' % evt.GetString())
 
     # Capture events when the user types something into the control then
     # hits ENTER.
     def EvtTextEnter(self, evt):
         self.log.WriteText('EvtTextEnter: %s' % evt.GetString())
+        evt.Skip()
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -103,5 +104,5 @@ event is generated every time that the user hits a key in the ComboBox entry fie
 if __name__ == '__main__':
     import sys,os
     import run
 if __name__ == '__main__':
     import sys,os
     import run
-    run.main(['', os.path.basename(sys.argv[0])])
+    run.main(['', os.path.basename(sys.argv[0])] + sys.argv[1:])