PyQt5每天必学之创建窗口居中效果


Posted in Python onApril 19, 2018

本文实例为大家分享了PyQt5如何能够创建在桌面屏幕上居中窗口的具体代码,供大家参考,具体内容如下

下面的脚本说明我们如何能够创建在桌面屏幕上居中的窗口。

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
PyQt5 教程

这个程序是将一个窗口显示在屏幕的中心。

作者:我的世界你曾经来过
博客:http://blog.csdn.net/weiaitaowang
最后编辑:2016年7月30日
"""

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QDesktopWidget

class Example(QWidget):

 def __init__(self):
  super().__init__()

  self.initUI()

 def initUI(self):

  self.setGeometry(300, 300, 300, 220)

  self.center()

  self.setWindowTitle('窗口居中')  
  self.show()

 def center(self):

  qr = self.frameGeometry()
  cp = QDesktopWidget().availableGeometry().center()
  qr.moveCenter(cp)
  self.move(qr.topLeft())

if __name__ == '__main__':

 app = QApplication(sys.argv)
 ex = Example()
 sys.exit(app.exec_())

QtGui.QDesktopWidget 类提供了有关用户桌面的信息,包括屏幕尺寸。

self.center()

将居中窗口的代码放置在自定义 center() 方法中。

qr = self.frameGeometry()

frameGeometry() 方法允许我们创建一个无形矩形并根据主窗口的宽高设置自身的宽度与高度。简单理解就是将这个控件(QWidget)的几何内容(宽高位置等),赋值给qr

cp = QDesktopWidget().availableGeometry().center()

计算出你的显示器的屏幕分辨率。根据得到的分辨率我们得到屏幕的中心点。

qr.moveCenter(cp)

我们的矩形(qr)已有宽度和高度,现在设置移动矩形的中心(moveCenter)到屏幕的中心点(cp),矩形的尺寸是不变的。

self.move(qr.topLeft())

移动应用程序窗口的左上角到qr矩形的左上角,从而使应用程序窗口显示在屏幕的中心。

程序执行后

PyQt5每天必学之创建窗口居中效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python生成pdf文件的方法
Aug 04 Python
python实现自动登录人人网并访问最近来访者实例
Sep 26 Python
使用Python向DataFrame中指定位置添加一列或多列的方法
Jan 29 Python
利用python实现对web服务器的目录探测的方法
Feb 26 Python
Python使用正则表达式分割字符串的实现方法
Jul 16 Python
Pytorch 抽取vgg各层并进行定制化处理的方法
Aug 20 Python
如何在Django中使用聚合的实现示例
Mar 23 Python
Python自定义聚合函数merge与transform区别详解
May 26 Python
Django实现内容缓存实例方法
Jun 30 Python
python实现xlwt xlrd 指定条件给excel行添加颜色
Jul 14 Python
Pycharm Available Package无法显示/安装包的问题Error Loading Package List解决
Sep 18 Python
python中函数返回多个结果的实例方法
Dec 16 Python
PyQt5每天必学之弹出消息框
Apr 19 #Python
详谈python3中用for循环删除列表中元素的坑
Apr 19 #Python
PyQt5每天必学之关闭窗口
Apr 19 #Python
python实现在IDLE中输入多行的方法
Apr 19 #Python
python贪婪匹配以及多行匹配的实例讲解
Apr 19 #Python
PyQt5每天必学之工具提示功能
Apr 19 #Python
PyQt5每天必学之QSplitter实现窗口分隔
Apr 19 #Python
You might like
php 编写安全的代码时容易犯的错误小结
2010/05/20 PHP
学习php设计模式 php实现装饰器模式(decorator)
2015/12/07 PHP
PHP实现大数(浮点数)取余的方法
2017/02/18 PHP
asp.net和asp下ACCESS的参数化查询
2008/06/11 Javascript
iframe 异步加载技术及性能分析
2011/07/19 Javascript
一款jquery特效编写的大度宽屏焦点图切换特效的实例代码
2013/08/05 Javascript
jquery $.fn $.fx是什么意思有什么用
2013/11/04 Javascript
使用js画图之正弦曲线
2015/01/12 Javascript
js window对象属性和方法相关资料整理
2015/11/11 Javascript
jquery实现简单文字提示效果
2015/12/02 Javascript
jQuery实用密码强度检测
2017/03/02 Javascript
原生JS京东轮播图代码
2017/03/22 Javascript
详解VUE的状态控制与延时加载刷新
2017/03/27 Javascript
JavaScript表单验证实现代码
2017/05/22 Javascript
vue-music关于Player播放器组件详解
2017/11/28 Javascript
Layui 设置select下拉框自动选中某项的方法
2018/08/14 Javascript
angularjs手动识别字符串中的换行符方法
2018/10/02 Javascript
vue使用v-if v-show页面闪烁,div闪现的解决方法
2018/10/12 Javascript
解决layer.prompt无效的问题
2019/09/24 Javascript
Python解析nginx日志文件
2015/05/11 Python
python 调用win32pai 操作cmd的方法
2017/05/28 Python
对python抓取需要登录网站数据的方法详解
2018/05/21 Python
python 实现对数据集的归一化的方法(0-1之间)
2018/07/17 Python
python 执行文件时额外参数获取的实例
2018/12/18 Python
python list多级排序知识点总结
2019/10/23 Python
快时尚眼镜品牌,全国连锁眼镜店:LOHO眼镜生活
2018/10/08 全球购物
NHL官方在线商店:Shop.NHL.com
2020/05/01 全球购物
腾讯技术类校园招聘笔试试题
2014/05/06 面试题
幼儿园教师请假制度
2014/01/16 职场文书
电大毕业生自我鉴定
2014/04/10 职场文书
四年级评语大全
2014/04/21 职场文书
小学毕业演讲稿
2014/04/25 职场文书
领导班子个人查摆问题对照检查材料
2014/10/02 职场文书
个人总结怎么写
2015/02/26 职场文书
入党转正申请报告
2015/05/15 职场文书
PyMongo 查询数据的实现
2021/06/28 Python