2017-08-01 73 views
0

我正在創建一個構建關於某人的信息的GUI。我希望用戶使用下拉欄選擇他們的出生月份,將早些時候配置爲列表格式。Python Tkinter - 從列表中創建下拉選擇欄

from tkinter import * 

birth_month = [ 
    'Jan', 
    'Feb', 
    'March', 
    'April' 
    ] #etc 


def click(): 
    entered_text = entry.get() 

Data = Tk() 
Data.title('Data') #Title 

label = Label(Data, text='Birth month select:') 
label.grid(row=2, column=0, sticky=W) #Select title 

我如何創建一個下拉列表中顯示的幾個月?

+0

您是否閱讀過一些tkinter文檔以查看可用的小部件? –

+0

您的問題是否已被回答,或您是否還需要知道如何檢索用戶選擇的選項? –

+0

@對不起,謝謝 –

回答

5

要創建「下拉菜單」,您可以在使用TKinter使用OptionMenu的基本OptionMenu

例子:

from Tkinter import * 

master = Tk() 

variable = StringVar(master) 
variable.set("one") # default value 

w = OptionMenu(master, variable, "one", "two", "three") 
w.pack() 

mainloop() 

的更多信息(包括上面的腳本)可以發現here


創建從一個列表個月的OptionMenu將簡單:

from tkinter import * 

OPTIONS = [ 
"Jan", 
"Feb", 
"Mar" 
] #etc 

master = Tk() 

variable = StringVar(master) 
variable.set(OPTIONS[0]) # default value 

w = OptionMenu(master, variable, *OPTIONS) 
w.pack() 

mainloop() 

雖然你沒有在你的問題問這個,以便檢索值用戶選擇了您可以簡單地使用輸出的變量.get(),在下面的情況下這是variable

from tkinter import * 

OPTIONS = [ 
"Jan", 
"Feb", 
"Mar" 
] #etc 

master = Tk() 

variable = StringVar(master) 
variable.set(OPTIONS[0]) # default value 

w = OptionMenu(master, variable, *OPTIONS) 
w.pack() 

def ok(): 
    print ("value is:" + variable.get()) 

button = Button(master, text="OK", command=ok) 
button.pack() 

mainloop() 

我強烈建議通過this blog閱讀更多基本tkinter信息。

+0

「需要用」有點強。另一種選擇是'ttk'模塊提供的組合框。 –

+0

更新後反映 –