【发布时间】:2021-04-13 02:56:25
【问题描述】:
我有这段代码,我单击按钮,tkinter 窗口显示图像以及 tk 根窗口。 我尝试使用 root.withdraw() 但这只是最终创建了 tkinter 根窗口并且不显示我的图像。在仅显示图像和隐藏 tkinter 根窗口方面需要帮助
def on_click_button():
global stage
stage == 'Menu'
root = tk.Toplevel()
photoImageObj = tk.PhotoImage(file="showimg.png")
lab = tk.Label(root, image=photoImageObj).pack()
root.withdraw()
root.mainloop()
print('You clicked samsung note 20')
【问题讨论】:
-
您正在创建 两个 窗口:一个
Toplevel和一个隐式根(假设您在此函数之前没有创建根窗口)。你知道吗? -
我尝试在运行按钮之前创建一个
toplevel root 'root = tk.Toplevel()',但同样的问题仍然存在。我还需要Toplevelroot 来运行 tkinter 窗口。我对 tkinter 很陌生,所以不太确定我正在创建的隐式根是什么,如果可能的话,我想删除额外的窗口,感谢您的帮助! -
如果您还没有创建
Tk的实例,那么创建Toplevel将隐式为您创建一个,从而产生两个窗口。由于您没有提供完整的minimal reproducible example,因此我们无法知道您在调用此函数之前是否已经创建了Tk的实例。那么,您的代码是否在某处执行something = Tk()? -
啊,我有一个功能
# creates a window def create_window(): window = tk.Toplevel(root),我还有root = tk.Tk()用于其他按钮,但是我认为这与三星note 20 按钮不冲突。如果我错了,请纠正我。感谢您的帮助! -
在其他可点击按钮下编辑我也有
root = tk.Tk() w = tk.Label(root, text=('hello')) w.pack() w.config(width=0, height=0) w.config(font=("Courier", 30)) root.mainloop(),但不确定这些是否会导致问题,因为我目前正在尝试创建一个按钮点击事件,该事件打开带有我需要的图像的 tkinter 窗口显示