【发布时间】:2017-03-09 02:49:00
【问题描述】:
我正在使用 tkinter 在 Python 3 中工作,并希望在弹出窗口中有一个按钮,既可以运行命令又可以销毁弹出窗口。我下面的代码在前端工作,但在命令行上出现错误,这是一个可以解决的问题吗?
我得到的错误是:
回溯(最近一次通话最后一次):
文件“C:Python34\lib\tkinter__intit__.py”,__call__ 中的第 1538 行
返回 self.func(*args)
文件“test.py”,第 14 行,在
命令 = lambda: display_something() * popup.destroy())
类型错误:& 不支持的操作数类型:“NoneType”和“NoneType”
from tkinter import *
class MainView(Frame):
def __init__(self,master):
Frame.__init__(self,master)
self.grid()
new_popup = Button(self,text = 'Make A Popup!',
command = lambda: popup()).grid(row=0,column=0)
def popup():
popup = Toplevel()
button = Button(popup, text = 'Display something on the command line',
command = lambda: display_something() & popup.destroy())
button.pack()
def display_something():
print('popup ran the command')
def main():
root = Tk()
root.title('Eric\'s Archiver')
app = MainView(root)
root.mainloop()
if __name__ == '__main__':
main()
【问题讨论】:
-
能否将错误信息添加到问题中