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

作者:我的世界你曾经来过 时间:2022-02-16 19:03:49 

本文实例为大家分享了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每天必学之创建窗口居中效果

来源:https://blog.csdn.net/weiaitaowang/article/details/52072992

标签:PyQt5,窗口
0
投稿

猜你喜欢

  • Python numpy实现二维数组和一维数组拼接的方法

    2022-02-24 09:40:53
  • python获得两个数组交集、并集、差集的方法

    2022-08-12 18:37:31
  • Python面向对象类编写细节分析【类,方法,继承,超类,接口等】

    2023-01-01 11:23:13
  • Python中用sleep()方法操作时间的教程

    2023-11-27 10:45:28
  • Git可视化教程之Git Gui的使用

    2022-12-10 03:12:06
  • JavaScript函数封装的示例详解

    2024-04-25 13:15:51
  • 用MSXML2.ServerXMLHTTP的setTimeouts属性解决并死问题

    2010-03-02 20:21:00
  • MySQL中的联合索引学习教程

    2024-01-21 23:49:34
  • 三种不同方式连接MySQL数据库的方法及示例

    2010-06-11 13:37:00
  • Asp中Server.ScriptTimeOut脚本超时属性需要注意的一点

    2008-10-18 14:53:00
  • php数组查询元素位置的实例方法

    2024-05-02 17:34:06
  • python基于socketserver实现并发,验证客户端的合法性

    2023-04-15 09:05:38
  • JavaScript正则表达式的贪婪匹配和非贪婪匹配

    2024-04-30 09:53:01
  • 深入分析C#连接Oracle数据库的连接字符串详解

    2024-01-20 23:46:29
  • python利用K-Means算法实现对数据的聚类案例详解

    2021-02-28 10:01:29
  • oracle学习笔记(三)

    2012-01-05 19:28:42
  • python使用turtle库绘制奥运五环

    2021-06-21 04:22:44
  • Python 实现敏感目录扫描的示例代码

    2021-08-21 05:47:14
  • asp日期 时间 星期函数使用方法详解

    2007-09-21 17:38:00
  • 关于Python中字符串的各种操作

    2022-06-25 16:18:38
  • asp之家 网络编程 m.aspxhome.com