想用python2的Tkinter做一个界面,设置了一个按钮,按钮点击后应该打开文件选择对话框,但是一运行整个系统界面时,还没点击按钮,系统就主动打开了文件选择对话框。
查阅网上资料,发现问题原因是command函数带有参数造成的。tkinter要求由按钮(或者其它的插件)触发的控制器函数不能含有参数。需要在函数前面添加lambda:
原代码为:command=callback() 改为 command=lambda:callback()
参考链接:
想用python2的Tkinter做一个界面,设置了一个按钮,按钮点击后应该打开文件选择对话框,但是一运行整个系统界面时,还没点击按钮,系统就主动打开了文件选择对话框。
查阅网上资料,发现问题原因是command函数带有参数造成的。tkinter要求由按钮(或者其它的插件)触发的控制器函数不能含有参数。需要在函数前面添加lambda:
原代码为:command=callback() 改为 command=lambda:callback()
参考链接: