2016-07-27 115 views
0

對於我的作業,我必須創建一個小部件。我對此很陌生。我試圖讓我的按鈕顯示出來。我試過包裝它們,但我不知道我做錯了什麼。這是我的。GUI,按鈕不顯示在窗口中

from tkinter import * 
import turtle 
main = Tk() 
main.title("TurtleApp") 

class turtleApp: 

    def __init_(self): 
    self.main = main 
    self.step = 10 
    self.turtle = turtle.Turtle() 
    self.window = turtle.Screen() 
    self.createDirectionPad 

    def createDirectionPad(self): 
    mainFrame = Frame(main) 
    mainFrame.pack() 
    button1 = Button(mainFrame,text = "left", fg="red") 
    button2 = Button(mainFrame,text = "right", fg="red") 
    button3 = Button(mainFrame,text = "up", fg="red") 
    button4= Button(mainFrame,text = "down", fg="red") 
    button1.pack() 
    button2.pack() 
    button3.pack() 
    button4.pack() 

main.mainloop() 

回答

2

所有的壓痕首先是關閉的,但一旦你解決這個問題,你從來沒有真正創建turtleApp類的一個實例,所以沒有代碼的不斷被執行你留下一個空的GUI。

# Actually create a turtleApp instance which adds the buttons 
app = turtleApp() 

# Enter your main event loop 
main.mainloop() 

您還需要實際呼叫createDirectionPad__init__使用顯式()。實際上,self.createDirectionPad(沒有())只是創建對該方法的引用,並不實際調用它。

def __init__(self): 
    # other stuff 
    self.createDirectionPad() 

更新

你也有你的__init__函數聲明一個錯字。您錯過了最後的___init__

+0

創建實例後它仍然沒有運行 – Mia

+0

@Mia更新超過 – Suever

+0

我看到並修復了我發佈代碼後。顯然,我的代碼還有另一個問題,我沒有看到。 – Mia

相關問題