我想知道如何根据Combobox
下拉列表选择在不同的标签中有多个值。例如,假设您有一个Combobox
值 ( car
, house
, computer
) 和多个Label
s 在选择 时反映不同的大小和颜色Combobox
。如果我选择car
,我将有 size: big
, color:black
等等......
问问题
5627 次
2 回答
5
Combobox 小部件生成虚拟事件<<ComboboxSelected>>
,您可以使用它来根据当前值更改标签的选项:
import Tkinter as tk
import ttk
values = ['car', 'house', 'computer']
root = tk.Tk()
labels = dict((value, tk.Label(root, text=value)) for value in values)
def handler(event):
current = combobox.current()
if current != -1:
for label in labels.values():
label.config(relief='flat')
value = values[current]
label = labels[value]
label.config(relief='raised')
combobox = ttk.Combobox(root, values=values)
combobox.bind('<<ComboboxSelected>>', handler)
combobox.pack()
for value in labels:
labels[value].pack()
root.mainloop()
于 2013-06-04T19:58:16.537 回答
3
您可以将 textvariable 属性分配给组合框,然后对该变量进行跟踪。每当组合框的值更改时,跟踪将导致调用函数。然后,您可以在此功能中为所需的任何标签设置文本。
于 2013-06-04T19:45:20.080 回答