1
我可以成功地打開程序,但每當我給密碼輸入一個輸入,它就會給我這個回溯/錯誤。在python中導致這個屬性錯誤的原因是什麼?
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python27\lib\lib-tk\Tkinter.py", line 1536, in __call__
return self.func(*args)
File "C:/Users/Frederik/Desktop/password.py", line 30, in reveal
content = self.password.get()
AttributeError: Label instance has no attribute 'get'
我很新的python,所以我真的不知道是什麼原因導致此錯誤。我的代碼如下所示:
from Tkinter import *
class Application(Frame):
""" GUI App """
def __init__(self, master):
""" Init the frame """
Frame.__init__(self,master)
self.grid()
self.create_widgets()
def create_widgets(self):
""" Button, text and entry """
self.instruction = Label(self, text = "Enter the password")
self.instruction.grid(row = 0, column =0, columnspan = 2, sticky = W)
self.password = Label(self, text = "Password: ")
self.password.grid(row = 1, column = 0, columnspan = 2, sticky = W)
self.enterpassword = Entry(self)
self.enterpassword.grid(row = 1, column = 1, sticky = W)
self.submit_button = Button(self, text ="Submit", command = self.reveal)
self.submit_button.grid(row = 2, column = 0, sticky =W)
self.text = Text(self, width = 35, height = 5, wrap = WORD)
self.text.grid(row = 3, column = 0, columnspan = 2, sticky = W)
def reveal(self):
""" Display """
content = self.password.get()
if content == "fek_u_D8lan!":
message = "Gratz, you feked D8lan!"
else:
message = "U failed to fek D8lan!"
self.text.delete(0.0, END)
self.text.insert(0.0, message)
root = Tk()
root.title("Fek Dolan")
root.geometry("250x150")
app = Application(root)
root.mainloop()
謝謝你的工作。我不知道我是如何錯過這一點的。哦,謝謝 – wardz