2015-04-19 30 views
1

我很困惑如何將Entry()中輸入的值輸入到變量中。任何想法或建議如何解決它。Python tkinter條目()不會將任何值返回給變量


import sys 
from tkinter import * 
from tkinter import messagebox 

root=Tk() 
root.title('Test') 

e1=Entry(root) 
e1.grid(row=1) 

global e 
e=e1.get() 

def display(): 
    messagebox.showinfo(title="Message",message=e) 

Submit=Button(root, justify=LEFT, padx=5,text="Submit",command= display).grid(row=2,sticky=W) 

root.mainloop() 

我要顯示在消息框中輸入框中輸入的值。

回答

2

e將引用一個空字符串,並且不會更改,因爲它僅在Entry小部件初始化後設置。

您需要致電e1.get()才能獲取條目窗口小部件的當前值。

def display(): 
    messagebox.showinfo(title="Message", message=e1.get()) 
+0

ok ..但是當我這樣做,消息框顯示一些其他值,如「37582768get」。我輸入的實際值是5. – Shiv18

+0

@ Shiv18,這是我得到的:http://i.imgur.com/QQX7LXj.png。順便說一句,我刪除了'全球e'聲明。 – falsetru

+0

@ Shiv18,你的代碼中有沒有其他'e1'? – falsetru