0

我正在测试我正在编写的应用程序,但我只是得到一个空白窗口并且没有小部件。

from Tkinter import*
class App(Frame):

def _init_(self, master):

    frame = Frame(master)
    frane.pack()

    self.instruction = Label(frame, text = 'Password:')
    self.instruction.pack()

    self.button = Button(frame, text = 'Enter', command = self.reveal)
    self.button.pack()


root = Tk()
root.title('Password')
root.geometry('350x250')
App(root)
root.mainloop()
4

1 回答 1

3

你有几个错别字。第一个是在构造方法的名称中:

def _init_(self, master):

应该读:

def __init__(self, master):

请注意双下划线 - 请参阅Python 对象的文档

第二个在您的构造函数中:

frane.pack()

您还缺少 App 类中名为“reveal”的方法的声明:

self.button = Button(frame, text="Enter", command=self.reveal)

工作示例如下:

from Tkinter import *

class App(Frame):

    def __init__(self, master):
        Frame.__init__(self, master)
        self.pack()

        frame = Frame()
        frame.pack()

        self.instruction = Label(frame, text="Password:")
        self.instruction.pack()

        self.button = Button(frame, text="Enter", command=self.reveal)
        self.button.pack()


    def reveal(self):
        # Do something.
        pass


root = Tk()
root.title("Password")
root.geometry("350x250")
App(root)
root.mainloop()

另请参阅:Tkinter 文档

于 2012-12-28T00:39:54.967 回答