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

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

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

相关文章

解决新版Pycharm中Matplotlib图像不在弹出独立的显示窗口问题

解决新版Pycharm中Matplotlib图像不在弹出独立的显示窗口问题

官方说明链接: https://intellij-support.jetbrains.com/hc/en-us/community/posts/115000736584-SciView-...

wxPython实现带颜色的进度条

wxPython实现带颜色的进度条

本文实例为大家分享了wxPython实现带颜色进度条的具体代码,供大家参考,具体内容如下 【问题描述】 1、在使用wxpython创建进度条时遇到如下问题,使用SetForeground...

django框架如何集成celery进行开发

django框架如何集成celery进行开发

上一篇已经介绍了celery的基本知识,本篇以一个小项目为例,详细说明django框架如何集成celery进行开发。 本系列文章的开发环境: window 7 + python2.7...

基于anaconda下强大的conda命令介绍

我们来探究window下面,使用conda命令来操作anaconda,安装库。 conda -V 检验是否安装;以及当前的anaconda版本 conda list 查看安装了那些库 c...

运用TensorFlow进行简单实现线性回归、梯度下降示例

运用TensorFlow进行简单实现线性回归、梯度下降示例

线性回归属于监督学习,因此方法和监督学习应该是一样的,先给定一个训练集,根据这个训练集学习出一个线性函数,然后测试这个函数训练的好不好(即此函数是否足够拟合训练集数据),挑选出最好的函数...