当前位置 : 主页 > 编程语言 > python >

【瓢儿菜】Python-Tkinter 窗体居中

来源:互联网 收集:自由互联 发布时间:2022-06-15
1、晚上下班回家,捣鼓canvas 结合pillow模块显示图片,摸索窗体居中的法子,折腾一会儿。 2、设置窗体居中,先得到窗体的宽度、高度: #获取屏幕宽、高 windowX = win.winfo_screenwidth() w


1、晚上下班回家,捣鼓canvas 结合pillow模块显示图片,摸索窗体居中的法子,折腾一会儿。

2、设置窗体居中,先得到窗体的宽度、高度:


#获取屏幕宽、高
windowX = win.winfo_screenwidth()
windowY = win.winfo_screenheight()


3、设置窗体宽、高,计算窗体开始显示的中心坐标:


# 设置 窗口宽 高
x, y = 680,460
# 计算中心坐标
cen_x = (windowX-x) / 2
cen_y = (windowY-y) / 2
# print(cen_x, cen_y)
# 设置窗体宽高、显示坐标
win.geometry('%dx%d+%d+%d' % (x, y,cen_x, cen_y))


4、测试效果:


【瓢儿菜】Python-Tkinter 窗体居中_窗体居中


5、全部代码:


import tkinter as tk
from tkinter.messagebox import *
from PIL import Image,ImageTk

win=tk.Tk()
win.title("扑克牌程序")
#获取屏幕宽、高
windowX = win.winfo_screenwidth()
windowY = win.winfo_screenheight()
# 设置 窗口宽 高
x, y = 680,460
# 计算中心坐标
cen_x = (windowX-x) / 2
cen_y = (windowY-y) / 2
# print(cen_x, cen_y)
# 设置窗体宽高、显示坐标
win.geometry('%dx%d+%d+%d' % (x, y,cen_x, cen_y))
# canvas铺满整个窗体
cv=tk.Canvas(win,bg='pink',width=x,height=y)

imgs=[]
# 加载文件路径
img=Image.open(".\\img\\1.jpg")
# 设置图片显示大小
img.resize((160,100),Image.ANTIALIAS)
# 插入13张扑克牌
for x in range(0,13):
imgs.insert(x*13,ImageTk.PhotoImage(img))
cv.create_image((200+20*x,80),image=imgs[x])

# 设置按钮
bt1=tk.Button(win,text='重新发牌',width=60,height=40,command=None)
bt1.place(x=290,y=380,width=60,height=40)

cv.pack()

win.mainloop()


6、分享成功!



绿衣捧研催题卷,红袖添香伴读书!




网友评论