tkinter按钮无法打开新窗口

时间:2017-01-29 16:53:29

标签: python-3.x tkinter window

我遇到了tkinter的问题。 我的代码是按下按钮打开一个新窗口,但窗口没有打开。

这是我的代码:

主要模块

#!/usr/bin/python
#encoding: latin-1
import tkinter
import ce

#window config
window = tkinter.Tk()                   #create window
window.title("BBDOassist")              #set title
window.geometry("750x500")              #set size

…

#   buttons
button_ce = tkinter.Button(window, text="CE Evaluation", command="ce.run()")
button_ce.pack()


window.mainloop()                       #draw the window and start

'CE'模块

#!/usr/bin/python
#encoding: latin-1
import tkinter

…

def run():
  #window config
    window = tkinter.Tk()                                   #create window
    window.title("BBDOassist - CE Evaluation")              #set title
    window.geometry("750x500")                              #set size

…

    window.mainloop()                                    #draw the window and start

1 个答案:

答案 0 :(得分:1)

你至少有两个问题

首先,您必须为command属性提供对函数的引用。你传给它一个字符串。字符串是无用的。您需要将按钮定义更改为:

button_ce = tkinter.Button(window, text="CE Evaluation", command=ce.run)

其次,如果要创建其他窗口,则需要创建Toplevel而不是Tk的实例。 tkinter程序只需要Tk的一个实例,您只需要调用mainloop一次。

run更改为这样(并移除对mainlooprun的调用):

def run():
    #window config
    window = tkinter.Toplevel()
    ...