在上一篇里面
简单的介绍了Tkinter中ListBox的使用
接下来
一起看看ComboBox(下拉列表框)的用法
代码以及注释如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| #!/usr/bin/python # -*- coding: UTF-8 -*- import tkinter as tk
# 创建窗体 from tkinter import ttk
window = tk.Tk() window.title('Tk Demo') window.geometry('350x500')
# 用来显示下拉框值的Label var = tk.StringVar() la = tk.Label(window, textvariable=var) la.grid(column=1, row=1)
def click(): var.set(number.get())
number = tk.StringVar() numberChosen = ttk.Combobox(window, width=12, textvariable=number) numberChosen['values'] = (1, 2, 4, 42, 100) # 设置下拉列表的值 numberChosen.grid(column=1, row=1) # 设置其在界面中出现的位置 column代表列 row 代表行 numberChosen.current(0) # 设置下拉列表默认显示的值,0为 numberChosen['values'] 的下标值
b1 = tk.Button(window, text='click', command=click) b1.place(x=50, y=50, anchor=tk.NW)
window.mainloop()
|
扩展
下面展示Label的另一种赋值方式
具体代码如下:
1 2 3 4 5 6 7 8 9 10 11
| # 用来显示下拉框值的Label var = tk.StringVar() la = tk.Label(window, text="") la.grid(column=1, row=1)
def click(): la.config(text=number.get()) # 这里使用的是label的config方法,将值赋给text # 需要注意的一点是,label里面不要出现textvariable # 如果有textvariable属性,那么这个赋值不会成功
|
执行代码,具体效果如下: