Python 动态更改wx.ComboBox()中的选项

Python 动态更改wx.ComboBox()中的选项,python,wxpython,wxwidgets,Python,Wxpython,Wxwidgets,我没有找到比用新的组合框替换旧的组合框更好的方法来更改wx.ComboBox()中的不同选项。有更好的办法吗 欧尔詹·佩特森 #!/usr/bin/python #20_combobox.py import wx import wx.lib.inspection class MyFrame(wx.Frame): def __init__(self, *args, **kwargs): wx.Frame.__init__(self, *args, **kwargs)

我没有找到比用新的组合框替换旧的组合框更好的方法来更改wx.ComboBox()中的不同选项。有更好的办法吗

欧尔詹·佩特森

#!/usr/bin/python

#20_combobox.py

import wx
import wx.lib.inspection

class MyFrame(wx.Frame):
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)

        self.p1 = wx.Panel(self)
        lst = ['1','2','3']
        self.st = wx.ComboBox(self.p1, -1, choices = lst, style=wx.TE_PROCESS_ENTER)

        self.st.Bind(wx.EVT_COMBOBOX, self.text_return)


    def text_return(self, event):
        lst = ['3','4']
        self.st = wx.ComboBox(self.p1, -1, choices = lst, style=wx.TE_PROCESS_ENTER)


class MyApp(wx.App):
    def OnInit(self):
        frame = MyFrame(None, -1, '20_combobox.py')
        frame.Show()
        self.SetTopWindow(frame)
        return 1

if __name__ == "__main__":
    app = MyApp(0)
#    wx.lib.inspection.InspectionTool().Show()
    app.MainLoop()
派生自,它具有的方法和项,所有这些方法都可以在wx.ComboBox上找到

一种方法是定义text_return()方法,如下所示:

def text_return(self, event):
    self.st.Clear()
    self.st.Append('3')
    self.st.Append('4')

或者self.sf.AppendItems(['3','4'])@Toni Cool我一直在寻找它-但由于某些原因,该函数没有文档记录。谢谢。AppendItems在新文档中,但不在旧文档中。更新时可以访问文档:文档链接已关闭