Python GUI builder(页面)设置组合框选项

2024-09-30 06:10:52 发布

您现在位置:Python中文网/ 问答频道 /正文

嗨,我试图使用ttk库在python中配置组合框,但不幸的是它不允许我添加值

self.qType = ttk.Combobox(top)
    self.qType.place(relx=0.69, rely=0.09, relheight=0.04, relwidth=0.22)
    self.qType.configure(textvariable=dnsGui_support.combobox)
    self.qType.configure(width=137)
    self.qType.configure(takefocus="")

德斯圭_支持.组合框在单独的文件中

^{pr2}$

我试过组合框['values']=('AA','MX') 但这给了我一个错误:stringvar instance没有属性setitem 如果我不设置值就运行我的程序


Tags: selfsupportconfiguretopplacettktextvariablecombobox
2条回答

问题是你用错了对象。在

命名StringVar对象combobox,和Combobox对象{},这有点令人困惑。但是,Combobox对象有一个可以设置的字符串列表。StringVar只有一个字符串,在本例中是Combobox的当前选择。在

错误信息可能有点不透明。它说StringVar instance has no attribute __setitem__的原因是x[key] = value实际上调用了x.__setitem__(key, value),所以如果{}(在您的例子中是StringVar)的类型没有这样的方法,那么错误就是这样说的。在

我不知道您是否可以看到使用dict样式语法的Combobox的值(对它的支持是一个很大的偶然性…)。如果它不工作,您可能需要configure它,或者甚至可能configure底层{}。但是,不管怎样,这是你需要操作的Combobox。在

self.qType = ttk.Combobox(top)
self.qType.place(relx=0.69, rely=0.09, relheight=0.04, relwidth=0.22)
self.value_list = ['MX', 'AA', 'CNAME']
self.qType.configure(values=self.value_list)
self.qType.configure(textvariable=dnsGui_support.combobox)
self.qType.configure(width=137)
self.qType.configure(takefocus="")

相关问题 更多 >

    热门问题