屏幕居中核心函数
-
在我们开发的UI类中定义一个center方法,(方法名自定,内容如下)。其中QDesktopWideget方法在Qtwidgets头文件中。
-
然后在
__init__()
self.center()
# 屏幕居中
def center(self):
# 获取窗口大小
screen = QtWidgets.QDesktopWidget().screenGeometry()
size = self.geometry()
# 本窗体运动
self.move((screen.width()-size.width())/2, (screen.height()-size.height())/2)
完整代码
用例可直接复制运行
# coding: utf-8
import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtCore import Qt
from PyQt5 import QtWidgets
class Example(QWidget):
def __init__(self):
super(Example, self).__init__()
self.initUI()
self.center()
# 屏幕居中
def center(self):
screen = QtWidgets.QDesktopWidget().screenGeometry()
size = self.geometry()
self.move((screen.width()-size.width())/2, (screen.height()-size.height())/2)
# 屏幕初始化
def initUI(self):
self.setGeometry(300, 300, 300, 300)
self.show()
self.setWindowTitle('Event handle')
# 按下回车关闭
def keyPressEvent(self, e):
if e.key() == Qt.Key_Return:
self.close()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())