Tkinter提供了许多通用的窗口小部件方法或基本的窗口小部件方法, 它们几乎可以与所有可用的窗口小部件一起使用。
winfo_ismapped()方法–
此方法用于检查指定的小部件是否可见。
语法:widget.winfo_ismapped()返回值:如果窗口小部件可见(或映射), 则返回True, 否则返回False。例外:如果小部件被破坏, 则将引发错误。
# Imports tkinter and ttk module
from tkinter import *
from tkinter.ttk import *
import time# toplevel window
root = Tk()def forget(widget):
widget.forget()
print ( "After Forget method called. Is widget mapped? = " , bool (widget.winfo_ismapped()))def retrieve(widget):
widget.pack()
print ( "After retrieval of widget. Is widget mapped? = " , bool (widget.winfo_exists()))# Button widgets
b1 = Button(root, text = "Btn 1" )
b1.pack()# This is used to make widget invisible
b2 = Button(root, text = "Btn 2" , command = lambda : forget(b1))
b2.pack()# This will retrieve widget
b3 = Button(root, text = "Btn 3" , command = lambda : retrieve(b1))
b3.pack()# infinite loop, interrupted by keyboard or mouse
mainloop()
输出如下:
文章图片
文章图片
winfo_exists()方法–
此方法用于检查指定的小部件是否存在, 即, 该小部件是否被破坏。
语法:widget.winfo_exists()返回值:如果存在widget, 则返回True, 否则返回False。
# Imports tkinter and ttk module
from tkinter import *
from tkinter.ttk import *# toplevel window
root = Tk()def dest(widget):
widget.destroy()
print ( "Destroy method called. Widget exists? = " , bool (widget.winfo_exists()))def exist(widget):
print ( "Checking for existance = " , bool (widget.winfo_exists()))# Button widgets
b1 = Button(root, text = "Btn 1" )
b1.pack()# This is used to destroy widget
b2 = Button(root, text = "Btn 2" , command = lambda : dest(b1))
b2.pack()# This is used to check existance of the widget
b3 = Button(root, text = "Btn 3" , command = lambda : exist(b1))
b3.pack()# infinite loop, interrupted by keyboard or mouse
mainloop()
输出如下:
文章图片
文章图片
文章图片
注意:如果小部件被破坏, 则无法再次检索。
【Python Tkinter中的winfo_ismapped()和winfo_exist()】首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。
推荐阅读
- Python(使用Tkinter的重量转换GUI)
- 傲梅分区助手的图文运用图文详细教程
- 豌豆荚删除云备份的小技巧
- 豌豆荚应用备份失败的处理妙招
- 豌豆荚:关闭应用升级提醒的办法
- 豌豆荚手机连接一直停留“正在取得”的处理办法
- 豌豆荚通过wifi连接电脑的小技巧
- 豌豆荚无法连接手机的通用处理办法
- pdf转换成jpg格式的图文详细教程