[英]How to make a tkinter button run another python file
我正在使用 tkinter 中的数据库 GUI,但是每当我尝试将某些功能相互嵌套时,它总是会产生不可预知的问题,所以我想问一下是否可以让按钮运行 function 来检查条件和如果是真的,它会运行另一个 script.py 文件,该文件会打开另一个 window。 那可能吗
我已经尝试将它们压入一个文件,但出现了奇怪的问题,并且文件太大而无法在此处发布,因此我正在寻找更简单的解决方案
我是初学者,所以我不是百分百确定,但我认为它看起来像这样
from tkinter import *
if name.get() == user_name AND pword.get() == password:
r = Tk()
my_btn = Button(r, text= "submit",command = open_py)
my_btn.grid(row=0,column=0)
r.mainloop()
这种事情有没有可能。 “open_py():”会是什么样子
您可以将新 window 的代码移动到不同的 python 文件并导入。
例如:
import tkinter as tk
def open_dialog():
root = tk.Tk()
button = tk.Text(root, text="Hello!")
button.pack(root)
root.mainloop()
if __name__ == "__main__":
open_dialog()
在hello_dialog.py
import tkinter as tk
from hello_dialog import open_dialog
def main():
root = tk.Tk()
button = tk.Button(root, text="Start!", command=open_dialog)
button.pack(root)
root.mainloop()
在main.py
这两个文件需要在同一个文件夹中。 您可以运行 main.py,即使 Button 的代码显示“Hello”,它也能正常运行。 在不同的文件中,所有 python 文件都是可以导入函数的库。 类和变量来自。 通过添加if __name__ == "__main__"
您可以测试您的 function 是直接启动还是由其他程序导入。 要了解有关__name__
和导入其他 python 文件的更多信息,请查看What does if __name__ == "__main__": do? .
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.