我遇到了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
答案 0 :(得分:1)
你至少有两个问题
首先,您必须为command
属性提供对函数的引用。你传给它一个字符串。字符串是无用的。您需要将按钮定义更改为:
button_ce = tkinter.Button(window, text="CE Evaluation", command=ce.run)
其次,如果要创建其他窗口,则需要创建Toplevel
而不是Tk
的实例。 tkinter程序只需要Tk
的一个实例,您只需要调用mainloop
一次。
将run
更改为这样(并移除对mainloop
内run
的调用):
def run():
#window config
window = tkinter.Toplevel()
...