【发布时间】:2012-03-28 03:23:15
【问题描述】:
我在以下 Python 3 tkinter 代码中收到错误“NameError: global name 'entryWidget' is not defined”:
from tkinter import *
import tkinter
def displayText():
tkinter.messagebox.showinfo("Tkinter Entry Widget", "Text value =" + entryWidget)
class Application(Frame):
def createWidgets(self):
root.title("TITLE")
textFrame = Frame(root)
entryLabel = Label(textFrame)
entryLabel["text"] = "Enter the text:"
entryLabel.pack(side=LEFT)
entryWidget = Entry(textFrame)
entryWidget["width"] = 50
entryWidget.pack(side=LEFT)
textFrame.pack()
button = Button(root, text="Submit", command=displayText)
button.pack()
self.QUIT = Button(self)
self.QUIT["text"] = "QUIT"
self.QUIT["fg"] = "red"
self.QUIT["command"] = self.quit
self.QUIT.pack()
def __init__(self, master=None):
Frame.__init__(self, master)
self.pack()
self.createWidgets()
root = Tk()
app = Application(master=root)
app.mainloop()
root.destroy()
代码本身旨在创建一个文本框(旁边有文本)、一个文本框的输入按钮和一个退出按钮。当在文本框中输入文本并按下回车键时,应该会出现一个消息框,告诉用户他们输入的内容。退出按钮只是退出脚本。
如何解决我遇到的错误(我知道错误的含义,只是不知道如何在这种情况下解决它)。请注意,我是 tkinter 和 GUI 代码的新手。
【问题讨论】:
标签: python user-interface python-3.x tkinter