Python写的Tkinter程序屏幕居中方法

yipeiwu_com5年前Python基础

本文适用场景:想用Tkinter开发界面程序并屏幕居中,但没找到相应的API。

这两天玩了玩Tkinter,感觉不错,就是屏幕居中这个问题在网上搜了很长时间也没
找到答案,最后没办法,看它的文档,用自己的方法实现了。

方法很土,就是获取初始化的窗体大小和屏幕大小,再通过计算得到大体值。
以下是代码:

复制代码 代码如下:

#! /usr/bin/python
'''
  File      : screenCenter.pyw
  Author    : Mike
  E-Mail    : Mike_Zhang@live.com
'''
from Tkinter import *

rt = Tk()
rt.resizable(False,False)
rt.title("Screen center")

rt.update() # update window ,must do
curWidth = rt.winfo_reqwidth() # get current width
curHeight = rt.winfo_height() # get current height
scnWidth,scnHeight = rt.maxsize() # get screen width and height
# now generate configuration information
tmpcnf = '%dx%d+%d+%d'%(curWidth,curHeight,
(scnWidth-curWidth)/2,(scnHeight-curHeight)/2)
rt.geometry(tmpcnf)
rt.mainloop()

好,就这些了,希望对你有帮助。

相关文章

Python统计日志中每个IP出现次数的方法

本文实例讲述了Python统计日志中每个IP出现次数的方法。分享给大家供大家参考。具体如下: 这脚本可用于多种日志类型,本人测试MDaemon的all日志文件大小1.23G左右,分析用时...

Python3 实现串口两进程同时读写

通过两个进程分别读写串口,并把发送与接收到的内容记录在blog中,收到q时程序结束并退出 import threading,time import serial import str...

pymysql的简单封装代码实例

这篇文章主要介绍了pymysql的简单封装代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 #coding=utf-8 #...

Python实现树的先序、中序、后序排序算法示例

本文实例讲述了Python实现树的先序、中序、后序排序算法。分享给大家供大家参考,具体如下: #encoding=utf-8 class Tree(): def __init__...

Python网络编程使用select实现socket全双工异步通信功能示例

本文实例讲述了Python网络编程使用select实现socket全双工异步通信功能。分享给大家供大家参考,具体如下: 在前面一篇《Python网络编程之TCP套接字简单用法》中,我们实...