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

yipeiwu_com7年前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()

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

相关文章

Python3处理文件中每个词的方法

本文实例讲述了Python3处理文件中每个词的方法。分享给大家供大家参考。具体实现方法如下: ''''' Created on Dec 21, 2012 处理文件中的每个词 @...

python 一个figure上显示多个图像的实例

python 一个figure上显示多个图像的实例

方法一:主要是inshow()函数的使用 首先基本的画图流程为: import matplotlib.pyplot as plt #创建新的figure fig = plt.f...

python 网络编程详解及简单实例

python 网络编程详解 网络编程的专利权应该属于Unix,各个平台(如windows、Linux等)、各门语言(C、C++、Python、Java等)所实现的符合自身特性的语法都大同...

Python实现二叉堆

Python实现二叉堆

优先队列的二叉堆实现 在前面的章节里我们学习了“先进先出”(FIFO)的数据结构:队列(Queue)。队列有一种变体叫做“优先队列”(Priority Queue)。优先队列的出队(De...

Django REST framework 如何实现内置访问频率控制

对匿名用户采用 IP 控制访问频率,对登录用户采用 用户名 控制访问频率。 from rest_framework.throttling import SimpleRateThrot...