Tkinter:按下按钮时如何使窗口出现

new*_*bie 0 python window tkinter

我想用Tkinter创建一个窗口.这个窗口应该有一个按钮.按下按钮时,我想要出现第二个窗口(没有第一个窗口消失).

代码缩短了:

from Tkinter import *
from modules.startingKit.highscore import Highscore


class OptionWindow:

    def __init__(self):
        self.master = Tk() 
        self.b4 = Button(self.master, text = "display Highscores", command = self.display()).grid(row=0, sticky = W)
    mainloop()



    def display(self):
        myWin = Toplevel()
Run Code Online (Sandbox Code Playgroud)

好吧,显示第二个窗口,但在我按下按钮之前.我能改变吗?

Bry*_*ley 6

command属性接受对函数的引用.执行此操作时command=self.display(),您将调用该函数并将结果传递给该command属性.

修复是省略括号:

self.b4 = Button(..., command=self.display, ...)
Run Code Online (Sandbox Code Playgroud)