网站首页 > 知识剖析 正文
前文介绍了窗体对象的创建、显示、退出,本文介绍窗体大小、位置、背景色与背景图的应用。
设置窗体大小,先要了解屏幕大小,最好不要溢出屏幕边界,获取屏幕大小的方法:
from tkinter import * #导入tkinter模块
frm=Tk() #创建窗体对象
w=frm.winfo_screenwidth() #获取屏幕宽度
h=frm.winfo_screenheight() #获取屏幕高度
print(w,h) #输出屏幕宽高
w1=w-30 #设置窗体宽小于屏幕宽度30像素
h1=h-80 #设置窗体高度小于屏幕高度80像素
frm.title(‘窗体大小位置与背景示例’) #设置窗体标题
frm.geometry(‘{}x{}+10+10’.format(w1,h1))
frm.resizable(0,0) #设置窗体不能用鼠标拖拽调整大小
img=PhotoImage(file='6.png') #创建图片框架对象,装入图片
#支持png、gif不支持jpg、bmp格式
imgW=img.width() #获取图片宽度
imgH=img.height() #获取图片高度
if imgW>w or imgH>h: #如果图片宽大于屏幕宽或这图片高大于屏幕高
c=1-(imgW-w)/imgW #计算图片宽度显示比率
d=1-(imgH-h)/imgH #计算图片高度显示比率
if c>d: #如果宽度比率大于高度比率,以高度比率计算图片显示宽和高
imgW=int(imgW*d)
imgH=int(imgH*d)-50 #避免底部状态栏遮盖住窗体底部
else: #如果宽度比率小于高度比率,以宽度比率计算图片显示宽和高
imgW=int(imgW*c)
imgH=int(imgH*c)
x=imgW/2 #设置图片显示中心点x坐标
y=imgH/2 #设置图片显示中心点y坐标
frm.geometry('{}x{}+10+10'.format(imgW,imgH)) #重设窗体大小为图片大小
cv=Canvas(frm,width=imgW,height=imgH,bg='#FF0000')
#在frm中绘制背景为红色宽高为图片大小的图像对象
ci=cv.create_image(x,y,anchor=CENTER,image=img) #以xy为坐标中心点绘制图片
cv.pack() #安装图片
frm.mainloop() #显示窗体,等待触发事件
猜你喜欢
- 2025-01-02 界面交互篇:个人中心页布局样式与逻辑交互开发
- 2025-01-02 Python 开发Word转PDF工具实现
- 2025-01-02 程序员用Python实现自动化控制键盘和鼠标
- 2025-01-02 JSX和RN样式以及和web的不同之处
- 2025-01-02 原神增大视野范围方法 原神怎么增加可视范围
- 2025-01-02 137.Python——PySide6:QInputDialog输入对话框的创建与使用
- 2025-01-02 科目二倒车入库模拟机程序代码
- 2025-01-02 用 Python 和 Pygame 实现一个图形界面的俄罗斯方块小游戏
- 2025-01-02 软件测试|超好用超简单的Python GUI库——tkinter(二)
- 2025-01-02 红色警戒轻松搞定高分辨率全屏
- 最近发表
- 标签列表
-
- xml (46)
- css animation (57)
- array_slice (60)
- htmlspecialchars (54)
- position: absolute (54)
- datediff函数 (47)
- array_pop (49)
- jsmap (52)
- toggleclass (43)
- console.time (63)
- .sql (41)
- ahref (40)
- js json.parse (59)
- html复选框 (60)
- css 透明 (44)
- css 颜色 (47)
- php replace (41)
- css nth-child (48)
- min-height (40)
- xml schema (44)
- css 最后一个元素 (46)
- location.origin (44)
- table border (49)
- html tr (40)
- video controls (49)