2012-12-28 40 views
0

我正在測試一個應用程序,我正在寫,但我只是得到一個空白窗口,沒有小部件。Tkinter小部件沒有出現

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() 

回答

3

你有幾個拼寫錯誤。首先是在構造方法的名稱:

def _init_(self, master): 

應改爲:

def __init__(self, master): 

注意雙下劃線 - 見the docs for Python objects

第二個是你的構造函數中:

frane.pack() 

你還缺少一個在App類名爲「揭露」方法的聲明:

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() 

另請參閱:The Tkinter documentation

+0

感謝迄今爲止這項工作 – zlittrell