Python tkinter 根窗体
根窗体是图像化应用程序的根控制器,是tkinter的底层控件的实例。
本文主要介绍python的tkinter模块中根窗体的常用属性和方法。
1. 导入tkinter
import tkinter as tk
2. 初始化根窗体实例
当导入tkinter模块后,调用Tk()方法可初始化一个根窗体实例 root
root=tk.Tk()
Tk后面的括号中可设参数设置标题:
root=tk.Tk(className= 标题 )
3. 属性和状态设置
常用属性
用title()方法设置/获取窗体标题,如果括号设了参数则设置为窗体标题,否则获取窗口标题;
用geometry()方法可以设置窗体的大小(以像素为单位,注意中间的乘号是小写字母x,不是*)和位置(用+设置,第一个+是距离屏幕左边的距离(x坐标),第二个+是距离屏幕上方的距离(y坐标),也可使用-号,效果相反),当无参数时则获取窗口大小和位置,
如果要单独获取窗口坐标或者大小,可以用winfo_x()和winfo_y()分别获得窗口的x、y坐标,winfo_width()和winfo_height()分别获得窗口的宽度和高度,注意在获取前需用update()方法刷新窗口,否则只会获取到窗口初始大小。
用destroy()方法关闭窗口;
用mainloop()将窗体置于主循环中,除非用户关闭,否则程序始终处于运行状态,用户关闭后执行后面的代码。在这个主循环的根窗体中,可持续呈现中的其他可视化控件实例,监测事件的发生并执行相应的处理程序。注意要放在代码的最后。在窗口被关闭后执行后面的代码。
下面是根窗体呈现示例:
import tkinter as tk
root=tk.Tk() #创建根窗体
root.title( 我的第一个窗体 ) #标题文字
root.geometry( 300x240+100+100 ) #大小为300*240,x坐标为100,y坐标为100
root.mainloop() #放入主循环

设置窗体最大化/最小化:
窗体的状态有三种:normal(正常显示);iconic(最小化);zoomed(最大化)。
root.state()方法不带任何参数时可以获取窗口状态,
root.state( normal )窗口正常显示;
root.state( icon )窗口最小化;
root.state( zoomed )窗口最大化;
或者是使用iconify使窗口最小化:
root.iconify();
也可使用attributes方法使窗口最大化:
root.attributes("-fullscreen", True);
建立临时窗口
t = tk.TopLevel(root) #创建子窗体
t.transient(root) #将t设为root的临时窗口
transient(master)建立一个临时窗口,会随主窗口最小化而最小化,关闭而关闭,保持在最前面
设置窗口图标
在python的当前目录,即和python文件同一个文件夹中放一个ico图标,
root.iconbitmap("图标路径")
隐藏根窗体
root.withdraw()可将根窗体隐藏,其作用是将窗体移动到另一个地方但并不销毁它。
root.deiconify()还原窗口
其他设置(根窗体root)
-
root.update() 刷新窗口
-
root.after(second,command),自动触发事件,表明多少秒后来自动执行command
-
root.maxsize() 设置窗体大小最大值(不带参数时获取最大值)
-
root.minsize() 设置窗体大小最小值(不带参数时获取最小值)
-
root.attributes(“-toolwindow”, True) 设置为工具窗口(没有最大最小按钮)
-
root.attributes(“-topmost”, True) 使窗口保持处于顶层
-
root.attributes( -transparentcolor , blue ) 设置透明色,blue可替换其他颜色
-
root.attributes( -alpha ,0.5) 设置窗口透明度,0~1之间
-
root[ background ]= blue 设置窗口背景色,blue可替换其他颜色
-
root.overrideredirect(True) 隐藏窗口边框和标题栏(缺点:脱离windows窗口管理,窗口也不会出目前任务栏,且无法设置最大化、最小化,否则会报错)
-
root.resizable(True,True) 设置窗口x,y方向的可变性(也可设0或1等)
-
root.winfo_screenwidth(),
root.winfo_screenheight() 获取屏幕分辨率(屏幕的高和宽)
结束语
暂时就这些了。以上就是Python中tkinter根窗体属性设置介绍,希望能够协助到你。如果你有任何的补充提议,欢迎向我提出!
CSDN同名搜 H_612,看更多Python文章
CSDN博客:https://blog.csdn.net/weixin_52132159





















暂无评论内容