GUI,按钮不在窗口中显示

时间:2016-07-27 23:37:51

标签: python tkinter

对于我的作业,我必须创建一个小部件。我对此很新。我正试图让我的按钮显示出来。我试过打包它们,但我不知道我做错了什么。这就是我所拥有的。

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

1 个答案:

答案 0 :(得分: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__