当我运行此脚本时,会出现两个窗口,一个用于文件选择和Tkinter窗口。如何更改此选项以便仅在选择文件后打开Tkinter窗口?感谢
def main():
my_file = askopenfilename()
stage1()
def stage1():
master = Tk()
master.mainloop()
答案 0 :(得分:2)
窗口master
仅在文件对话框关闭后尝试打开(尝试更改其标题以进行检查),您看到的第一个窗口是文件对话框的父窗口。实际上,tkinter文件对话框是顶层窗口,因此没有父窗口它们就不能存在。因此,您看到的第一个窗口是文件对话框的父窗口。
然而,可以使用withdraw
方法隐藏父窗口,然后使用deiconify
进行恢复:
from tkinter import Tk
from tkinter.filedialog import askopenfilename
def main():
master = Tk()
master.withdraw() # hide window
my_file = askopenfilename(parent=master)
master.deiconify() # show window
master.mainloop()
if __name__ == '__main__':
main()