目录
目录:
1.窗体的最小框架
2.窗体的基本设置
3.窗体的外形设置
(一)窗体的最小框架
1.说明:
需要导入标准库:
import tkinter
2.源代码:
# 导入模块,并取别名import tkinter as tk# 实例化一个窗体对象win = tk.Tk()# 设置窗体的大小(300x300),与出现的位置距离窗体左上角(+150+150)win.geometry("300x300+150+150")# 进入消息循环,显示窗体win.mainloop()
3.实现效果:
(二)窗体的基本设置
1.说明:
(1)添加标题:
# 设置标题win.title("标题")
(2)添加图标:
图标:必须是以 .ico 为后缀的图标文件,放于同目录下。
# 设置图标,以QQ头为例win.iconbitmap("app.ico")
(3)添加背景:
颜色:可以用英文名,也可以用RGU,十六进制表示的颜色。
# 设置背景色,以“蓝色”为例win["background"] = "blue"
2.完整代码:
# 导入模块,并去别名import tkinter as tk# 实例化一个窗体对象win = tk.Tk()# 设置窗体的大小(300x300),与出现的位置距离窗体左上角(+150+150)win.geometry("300x300+150+150")# 设置标题win.title("标题")# 设置图标,以QQ头为例win.iconbitmap("app.ico")# 设置背景色,以“蓝色”为例win["background"] = "blue"# 进入消息循环,显示窗体win.mainloop()
3.实现效果:
(三)窗体的外形设置
1.说明:
(1)设置透明度:
透明度的值是:0~1 可以是小数点,0:全透明;1:全不透明
python win.attributes("-alpha", 0.6)
(2)设置工具栏样式:
工具样式:True 只有退出按钮,也没有图标; False 正常的窗体样式
win.attributes("-toolwindow", True)
透明度与工具栏的效果图:
(3)设置全屏:
全屏模式:True 全屏;False 正常显示
win.attributes("-fullscreen", True)
(4)设置窗体置顶
窗体置顶:True 所有窗口中处于最顶层;False 正常显示
win.attributes("-topmost", True)
(5)设置成脱离工具栏
脱离工具栏:True 没有工具栏按钮;False 正常显示
win.overrideredirect(True)
脱离工具栏的效果图:
2.完整代码:
# 导入模块,并去别名import tkinter as tk# 实例化一个窗体对象win = tk.Tk()# 设置窗体的大小(300x300),与出现的位置距离窗体左上角(+150+150)win.geometry("300x300+150+150")# 设置标题win.title("标题")# 设置图标,以QQ头为例win.iconbitmap("app.ico")# 设置背景色,以“蓝色”为例win["background"] = "blue"# 设置透明度win.attributes("-alpha", 0.6)# 设置窗口为工具样式:win.attributes("-toolwindow", True)# # 设置全屏:win.attributes("-fullscreen", False)# 设置窗体置顶win.attributes("-topmost", True)# 设置成脱离工具栏win.overrideredirect(False)# 进入消息循环,显示窗体win.mainloop()
3.实现效果:
(四)窗体的三个方法:
1.获取屏幕的大小
(1)语法说明:
# 获取屏幕的大小;screen_height = root.winfo_screenheight()screen_width = root.winfo_screenwidth()
(2)源代码:
import tkinter as tkroot = tk.Tk()# 获取屏幕的大小;screen_height = root.winfo_screenheight()screen_width = root.winfo_screenwidth()print("你电脑的屏幕的高度是:", screen_height)print("你电脑的屏幕的宽度度是:", screen_width)root.mainloop()
(3)输出结果:
2.获取窗体的大小
(1)语法说明:
# 获取屏幕的大小;win_height = root.winfo_height()win_width = root.winfo_width()需要注意的是:要用root.update()方法,才能看到更新后的数值
(2)源代码:
import tkinter as tkroot = tk.Tk()root.geometry("600x500")# 更新窗体root.update()# 获取屏幕的大小;win_height = root.winfo_height()win_width = root.winfo_width()print("控件的高度是:", win_height)print("控件的宽度度是:", win_width)root.mainloop()
(3)输出结果:
3.获取窗体的位置
(1)语法说明:
# 获取窗体的位置win_x = win.winfo_x()win_y = win.winfo_y()
(2)源代码:
import tkinter as tkwin = tk.Tk()win.geometry("600x500")def change(event): win.update() # 获取窗体的位置 win_x = win.winfo_x() win_y = win.winfo_y() print(win_x) print(win_y)# 绑定事件,窗体的改变事件win.bind("", change)win.mainloop()
(3)输出结果:
当我用鼠标拖动窗体时,更新了一系列的位置数值