【问题标题】:Python tkinter entry() doesn't return any value to variablePython tkinter entry() 不向变量返回任何值
【发布时间】:2015-04-19 06:05:02
【问题描述】:

我很困惑如何将在 Entry() 中输入的值输入到变量中。关于如何解决它的任何想法或建议。


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()

我希望在输入框中输入的值显示在消息框中。

【问题讨论】:

    标签: python python-3.x tkinter messagebox tkinter-entry


    【解决方案1】:

    e 将引用一个空字符串并且不会更改,因为它仅在 Entry 小部件初始化之后设置。

    您需要调用e1.get() 来获取条目小部件的当前值。

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

    【讨论】:

    • 好的.. 但是当我这样做时,消息框会显示一些其他值,例如“37582768get”。我输入的实际值为 5。
    • @Shiv18,这就是我所拥有的:i.imgur.com/QQX7LXj.png。顺便说一句,我删除了global e 声明。
    • 感谢您的快速回复.. 是的.. 我删除了 e1。看到这张图片..i.imgur.com/Lub8YKA.jpg ...这就是我得到的..@falsetru
    猜你喜欢
    • 2020-04-15
    • 2022-12-12
    • 2020-10-10
    • 1970-01-01
    • 2016-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-18
    相关资源
    最近更新 更多