ComboBox值未在事件wxpython上更新

ComboBox值未在事件wxpython上更新,wxpython,Wxpython,我正在创建一个组合框,如下所示: combo= ['a', 'b', 'c'] self.stm_checkpoint_drop=wx.ComboBox(self.panel, -1, value='Options', choices=combo) self.stm_checkpoint_drop.Bind(wx.EVT_COMBOBOX, self.oncombo) def oncombo(self,event): selected = self.stm_checkpoint_dro

我正在创建一个组合框,如下所示:

combo= ['a', 'b', 'c']
self.stm_checkpoint_drop=wx.ComboBox(self.panel, -1, value='Options', choices=combo)
self.stm_checkpoint_drop.Bind(wx.EVT_COMBOBOX, self.oncombo)

def oncombo(self,event):
    selected = self.stm_checkpoint_drop.GetValue()

所选变量保留默认值“选项”。如何从存储在变量selected中的组合列表中获取选择的值。

不确定代码不起作用的确切原因,似乎没有明显的错误。检查这是否有效,并对照您的代码进行检查

import wx

class Myframe(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self, None)
        self.my_choices = ["Option A","Option B","Option C"]
        self.panel = wx.Panel(self)
        self.cbx = wx.ComboBox(self.panel, -1, value="Choose an Option", pos=(10,30), size=(300,30),choices=self.my_choices)
        self.cbx.Bind(wx.EVT_COMBOBOX, self.on_selection)
        self.txt1 = wx.TextCtrl(self.panel, -1, "Selected Value", pos=(10,100), size=(300,30))
        self.txt2 = wx.TextCtrl(self.panel, -1, "Selected Selection", pos=(10,130), size=(300,30))
        self.txt3 = wx.TextCtrl(self.panel, -1, "Selected String", pos=(10,160), size=(300,30))

    def on_selection(self, evt):
        Choice = self.cbx.GetValue()
        self.txt1.SetValue(Choice)
        Choice = self.cbx.GetSelection()
        self.txt2.SetValue(str(Choice))
        Choice = self.cbx.GetStringSelection()
        self.txt3.SetValue(Choice)

if __name__ == "__main__":
    App = wx.App()
    Myframe().Show()
    App.MainLoop()