【Python - tkinter】给Tk实例添加一个去掉最大最小化的临时窗口 | 仅使用临时窗口让父窗口失效
2021/11/16 22:10:49
本文主要是介绍【Python - tkinter】给Tk实例添加一个去掉最大最小化的临时窗口 | 仅使用临时窗口让父窗口失效,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
目录
认识Wm.transient
认识Wm的"-disabled"属性
Wm.transient中master的作用
代码参考
其他
Python 版本: 3.9.7
windows 版本: windows 10 x64
【萌新作品,不喜勿喷!!!】
认识Wm.transient
许多人都会见到tkinter实例(如IDLE)中有许去掉了最大最小化的窗口,如:
这就是临时窗口,那怎么做到这种效果呢?
可以用到这个代码:
Wm.transient(self, master=None)
作用: 绑定一个临时窗口。
self: 一个窗口, 但必须是一个 Toplevel 实例(使用Tk会报错)。
master: 父窗口。
认识Wm的"-disabled"属性
当你不想用户在操作一个窗口时,你可以用到这个代码:
Wm.attributes(self, "-disabled", bool)
作用: 让一个窗口无法被用户使用。
self: 一个窗口。
bool: 一个布尔值,True为上方self指定的窗口无法使用,False为上方self指定的窗口可以使用
Wm.transient中master的作用
如果用Wm.transient绑定了master,则再使用"-disabled"=True,则点击master会发生强调。
代码参考
Toplevel屏蔽父窗口(Wm的"-disabled"属性)代码:
# Toplevel屏蔽父窗口代码 from tkinter import * global top def end(): global t, top t.attributes("-disabled", 0) top.destroy() def add_tk(): global t, top t.attributes("-disabled", 1) top = Toplevel() top.resizable(False, False) top.geometry("500x250+530+30") lb = Label(top, text='子窗口,父窗口屏蔽') lb.pack() bt2 = Button(top, text='退出', command=end) bt2.pack() top.protocol('WM_DELETE_WINDOW', end) top.mainloop() t = Tk() t.wm_title('Toplevel 与屏蔽窗口') t.geometry("500x100") t.resizable(False, False) text = '''测试:Toplevel 与屏蔽窗口 这个测试将打开一个Toplevel窗口并屏蔽副窗口,在Toplevel窗口关闭后恢复''' label = Label(t, text=text) label.pack() bt = Button(t, text='新建窗口', command=add_tk) bt.pack() t.mainloop()
Toplevel去掉最小最大化按钮(Wm.transient)代码:
# Toplevel去掉最小最大化按钮代码 import tkinter def add_window(): top = tkinter.Toplevel() top.wm_title('Toplevel窗口') top.resizable(False, False) tkinter.Label(top, text='Toplevel窗口').pack() top.geometry("150x40") top.transient(root) # 核心指令 root = tkinter.Tk() root.wm_title('Toplevel去掉最小最大化按钮') root.geometry("500x100") root.resizable(False, False) text = '''测试:Toplevel去掉最小最大化按钮 这个测试将去掉(Toplevel)窗口中的最小化与最大化,也就是临时窗口''' label = tkinter.Label(root, text=text) label.pack() button = tkinter.Button(root, text='生成窗口', command=add_window) button.pack() root.mainloop()
其他
欢迎补充!
这篇关于【Python - tkinter】给Tk实例添加一个去掉最大最小化的临时窗口 | 仅使用临时窗口让父窗口失效的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程