【发布时间】:2016-01-04 19:21:54
【问题描述】:
class Editor():
def __init__(self):
self=Tkinter.Tk()
EditedSongName=StringVar()
EditedArtistName=StringVar()
SongNameLabel = Label(self, text="Song Name:")
SongNameLabel.pack()
SongNameEntry = Entry( self,textvariable=EditedSongName)
SongNameEntry.pack()
ArtistNameLabel = Label(self, text="Artist Name:")
ArtistNameLabel.pack()
ArtistNameEntry = Entry( self,textvariable=EditedArtistName)
ArtistNameEntry.pack()
EditOkButton = Button( self, text="Ok", command=EditOk )
EditOkButton.pack(anchor=CENTER)
self.mainloop()
def EditOk(self):
print "RSAOJ"
Root.canvas.delete(SongName)
SongName=canvas.create_text(650,30,text = EditedSongName,fill = 'black',font=("Times New Roman",35) )
canvas.pack()
Root.canvas.delete(ArtistName)
ArtistName=canvas.create_text(650,90,text = EditedArtistName,fill = 'black',font=("Times New Roman",20) )
canvas.pack()
self.destroy()
无论我如何更改功能,总是会出现错误。 NameError:未定义全局名称“EditOk” 这是什么意思?我仍然无法理解类和自我的概念。
【问题讨论】:
-
1.修复你的缩进,2.
self.EditOk -
self=Tkinter.Tk()- 你觉得你在那里做什么? -
我用 self.EditOk 还是不行,AttributeError: EditOk.
标签: python function class tkinter