【发布时间】:2017-03-23 08:59:18
【问题描述】:
假设我有一个带有如下简单代码的 GUI 它上面有一个按钮,当单击它时,我希望弹出另一个 GUI,然后从中调用该函数。问题是当我运行第一个文件时,另一个文件的 GUI 会自动弹出。我该怎么办。
first文件的代码如下
from tkinter import *
import another
root = Tk()
button1 = Button(root, text = "Call" , command = another.abc)
button1.pack()
root.mainloop()
第二个文件another.py的代码如下
from tkinter import *
root_Test2 = Tk()
root_Test2.geometry('450x450')
def abc():
print("that's working")
root_Test2.mainloop()
请建议在单击第一个按钮时帮助我打开第二个窗口的解决方案
【问题讨论】:
-
要将一个 .py 文件导入到另一个文件中,您需要将其正确地构造为 module,以便在导入时代码不会运行。
-
你能建议修改吗,我必须在第二个文件中进行,这样第二个文件的 mainloop() 就不会被调用
-
如果您已阅读我链接到的那篇教程文章,您应该能够自己弄清楚。不仅
mainloop不应该运行,root_Test2 = Tk()和root_Test2.geometry('450x450')也不应该运行。只能执行 Tkinter 导入和abc函数定义。其他内容必须在if __name__ == "__main__":块内进行保护。 -
所以尝试一下,如果您仍然无法弄清楚,请编辑问题中的代码以显示您最近的尝试。
标签: python user-interface tkinter python-import