下拉式列表 OptionMenu 簡介
OptionMenu 可以翻譯爲下拉式列表
,用戶可以從中選擇一項,構造方法如下
OptionMenu(父對象, options, *value)
其中,*value
是一系列下拉列表,下面詳細寫出
建立基本的OptionMenu
例子
:
import tkinter
root = tkinter.Tk()
var = tkinter.StringVar()
optionMenu = tkinter.OptionMenu(root, var, 'python', 'java', 'C', 'C++', 'C#')
optionMenu.pack()
root.mainloop()
運行結果:
選擇一項後,選項會更改
使用元組建立列表項目
例子
:
import tkinter
root = tkinter.Tk()
tupleVar = ('python', 'java', 'C', 'C++', 'C#')
var = tkinter.StringVar()
# 這裏必須要帶*號,要不然解釋器會認爲是一個數據,只會顯示一行的
optionMenu = tkinter.OptionMenu(root, var, *tupleVar)
optionMenu.pack()
root.mainloop()
運行結果跟上面一樣
建立默認選項 set()
在程序剛執行時,沒有看到任何項目,不過我們可以使用 set() 方法爲這個 OptionMenu 建立默認選項
例子
:
import tkinter
root = tkinter.Tk()
tupleVar = ('python', 'java', 'C', 'C++', 'C#')
var = tkinter.StringVar()
var.set('python')
# 這裏必須要帶*號,要不然解釋器會認爲是一個數據,只會顯示一行的
optionMenu = tkinter.OptionMenu(root, var, *tupleVar)
optionMenu.pack()
root.mainloop()
運行結果:
當然,我們可以使用元組變量名稱 + 索引
方式來設置默認值
例子
:
var.set(tupleVar[0])
運行結果跟上面一樣
獲得選項內容 get()
例子
:
import tkinter
def show():
varLabel.set(var.get())
root = tkinter.Tk()
tupleVar = ('python', 'java', 'C', 'C++', 'C#')
var = tkinter.StringVar()
var.set(tupleVar[0])
optionMenu = tkinter.OptionMenu(root, var, *tupleVar)
optionMenu.pack()
varLabel = tkinter.StringVar()
label = tkinter.Label(root, textvariable=varLabel, width=20, height=3, bg='lightblue', fg='red')
label.pack()
button = tkinter.Button(root, text='print', command=show)
button.pack()
root.mainloop()
運行結果:
謝謝觀看,筆者會持續更新,如有錯誤或者建議,請私信我