又是tkinter库的问题...
本帖最后由 元豪 于 2023-4-22 15:16 编辑问:
如何让tkinter库在指定条件下转换窗口或弹出一个新的窗口(不是信息弹窗)。
如按下按钮会把界面清空,在出现新的界面或一个新的窗口。
(最好是转换界面)
target.place(x = 9999, y = 9999)
这可以达到消失元素的效果
new_window = Tk()
这更简单,中间运行时也可以创建窗口呀 zhangjinxuan 发表于 2022-10-7 13:01
这可以达到消失元素的效果
把垃圾丢到床底下,垃圾就自动消失了,对吗? {:10_250:}
删除(消失)某个组件对象,应该是用:widget.destroy()
有人吗??
大佬大佬......@Twilight6 @人造人 @不二如是 元豪 发表于 2022-10-7 15:01
有人吗??
大佬大佬......@Twilight6 @人造人 @不二如是
.withdraw 可以隐藏根窗口,wm_deiconify 可以重新绘制根窗口
Toplevel 可以创建一个新的顶层窗口,此时你可以隐藏根窗口,如何想返回到根窗口时,在将 Toplevel 窗口销毁,或隐藏,重新绘制 根窗口
Twilight6 发表于 2022-10-7 15:12
.withdraw 可以隐藏根窗口,wm_deiconify 可以重新绘制根窗口
Toplevel 可以创建一个新的顶层窗口 ...
{:10_257:}对!wm_deiconify!
(焉了)咋用那?{:10_284:} 元豪 发表于 2022-10-7 15:15
对!wm_deiconify!
(焉了)咋用那?
试试这样吧,两个窗口都是一开始就创建了
运行过程也都隐藏不销毁,这样可能运行时候比较耗内存:
from tkinter import *
def isHidden():
if root.state() == "normal":
root.withdraw()
new_win.wm_deiconify()
else:
root.wm_deiconify()
new_win.withdraw()
root = Tk()
Label(root, text="Root Window").pack()
Button(root, text = "显示新窗口", command=isHidden).pack()
new_win = Toplevel(root)
new_win.withdraw()
Label(new_win, text="Top Window").pack()
Button(new_win, text = "返回主窗口", command=isHidden).pack()
mainloop() Twilight6 发表于 2022-10-7 15:24
试试这样吧,两个窗口都是一开始就创建了
运行过程也都隐藏不销毁,这样可能运行时候比较耗内存: ...
那怎么销毁呢?{:10_254:}{:10_254:} 元豪 发表于 2022-10-7 15:32
那怎么销毁呢?
destroy() 就是销毁,其实如果你只是搞个小程序,用隐藏可以了,应该占不了多少内存
销毁后每次你重新点按钮,都要重新创建顶层窗口的各个组件,也蛮麻烦的
Twilight6 发表于 2022-10-7 15:38
destroy() 就是销毁,其实如果你只是搞个小程序,用隐藏可以了,应该占不了多少内存
销毁后每次你 ...
谢啦,亲{:10_281:}
不愧是互助平台统治者,啥都懂{:5_106:} 元豪 发表于 2022-10-7 15:48
谢啦,亲
不愧是互助平台统治者,啥都懂
噗,不敢当,我只是搜索引擎用的比较熟练{:5_92:}
Twilight6 发表于 2022-10-7 17:02
噗,不敢当,我只是搜索引擎用的比较熟练
那如果我想保留菜单呢?{:10_254:} 元豪 发表于 2022-10-7 19:59
那如果我想保留菜单呢?
什么意思捏?描述清晰点呗
元豪 发表于 2022-10-7 19:59
那如果我想保留菜单呢?
你可以隐藏或者销毁其他不需要的组件,只保留菜单 Twilight6 发表于 2022-10-7 21:22
什么意思捏?描述清晰点呗
如保留部分按钮或组件该怎么改?
页:
[1]