Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 是否获取TkInter以显示用户输入?_Python_User Interface_Tkinter - Fatal编程技术网

Python 是否获取TkInter以显示用户输入?

Python 是否获取TkInter以显示用户输入?,python,user-interface,tkinter,Python,User Interface,Tkinter,我对python中的TkInter和GUI相当陌生(但我对python有一般的经验)。我在TkInter中开发一个GUI,希望用户输入他们的名字,并在点击按钮时让TkInter显示他们的名字。以下是我目前的代码: from Tkinter import * master = Tk() e = Entry(master) e.pack() e.focus_set() def callback(): print e.get() b = Button(master, text="g

我对python中的TkInter和GUI相当陌生(但我对python有一般的经验)。我在TkInter中开发一个GUI,希望用户输入他们的名字,并在点击按钮时让TkInter显示他们的名字。以下是我目前的代码:

from Tkinter import *

master = Tk()

e = Entry(master)
e.pack()

e.focus_set()

def callback():
    print e.get() 

b = Button(master, text="get", width=10, command=callback)
b.pack()

separator = Frame(height=2, bd=1, relief=SUNKEN)
separator.pack(fill=X, padx=5, pady=5)

Label(text=callback).pack()

mainloop() 
用户将在
条目
(或
e
)中输入他们的姓名,我想在标签小部件中显示
e
。有什么办法可以做到这一点吗?谢谢。

在顶部(导入项下方),将
name
定义为
StringVar

name = StringVar()
在函数
回调中
将内容更改为:

def callback():
    name.set(e.get())
最后,将
标签
小部件更改为:

Label(master, textvariable=name)
所以我所做的是创建一个特殊的对象,当我们改变它的值时,它的所有引用的值也会改变。然后,我们可以设置我们的函数来更改值以全局更新它-最后,我们利用此功能将此变量作为文本属性放入
标签中


注意:我还将parent参数添加到了
标签
。如果没有它,它将根本不会显示。

text
在使用StringVars时,标签中的
textvariable
。否则,这是一个很好的答案。