我的目标是在按下按钮时打开同一个窗口。但当我运行程序时,它会同时在两个窗口中打开
我想在按下按钮时把它打开
我怎么做
import tkinter as tk
from tkinter import messagebox
master = tk.Tk()
uruns = tk.Tk()
master.geometry("300x300")
uruns.geometry("300x300")
def buttonCallback():
mas = master.Label(uruns, text="Urunler listesi")
mas.pack()
urunler = tk.Button(master, text="Click", command=buttonCallback)
label_1 = tk.Label(master, text="Bolat Aktar ürün yönetim sistemi")
# Use the grid geometry manager to put the widgets in the respective position
label_1.grid(row=0, column=0)
urunler.grid(row=1, column=0)
# The application mainloop
tk.mainloop()
你的问题很简单。 您不能在代码中执行两次
Tk()
,任何tkinter代码都应该有一次Tk()
。 因此,如果您想创建另一个窗口,您将需要Toplevel()
,它与Tk()
相同。 因此,有两种方法可以做到这一点:方法1在函数:
你想用这个按钮打开一个新窗口,对吗? 而且你不想一开始就运行两次windows
删除你的
uruns = tk.Tk()
在函数
buttonCallBack
中,执行以下操作:完整代码:
方法2(最佳)显示/隐藏另一个窗口
Toplevel()
:要显示您的
Toplevel()
,请使用Toplvel.deiconify()
要隐藏您的
Toplevel()
,请使用Toplvel.withdraw ()
这样做:
相关问题 更多 >
编程相关推荐