是否可以将列表“设置”为组合框,wxpython?

3 python wxpython

您好,我知道可以使用列表来执行此操作,但是可以使用组合框执行此操作吗?有没有类似set的函数?

我尝试将 set 与组合框一起使用,但收到以下错误: AttributeError: 'ComboBox' object has no attribute 'Set'

谢谢。

Mik*_*oll 6

那么,您可以调用 SetItems(myList) 将列表放入 ComboBox 中,覆盖其中已有的内容。

编辑:在组合框的列表中创建列表的最常见方法如下:

myList = ["dog", "cat", "hamster"]
cbo = wx.ComboBox(self, choices=myList)
Run Code Online (Sandbox Code Playgroud)

但由于 ComboBox 继承自 ItemContainer,因此您也可以像下面的完整示例一样进行操作:

import wx

########################################################################
class MyFrame(wx.Frame):
    """"""

    #----------------------------------------------------------------------
    def __init__(self):
        """Constructor"""
        wx.Frame.__init__(self, None, title="Test")
        panel = wx.Panel(self)

        myList = ["dog", "cat", "hamster"]
        cbo = wx.ComboBox(panel)
        cbo.SetItems(myList)

        self.Show()

#----------------------------------------------------------------------
if __name__ == "__main__":
    app = wx.App(False)
    frame = MyFrame()
    app.MainLoop()
Run Code Online (Sandbox Code Playgroud)