This article mainly introduces the creation of window centering effect that must be learned every day in PyQt5, so that the application window is displayed in the center of the screen. It has certain reference value. Interested friends can refer to it
The example in this article shares with you the specific code of how PyQt5 can create a window centered on the desktop screen for your reference. The specific content is as follows
The following script explains how we can create a window centered on the desktop screen.
#!/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_())
The QtGui.QDesktopWidget class provides information about the user's desktop, including screen size.
self.center()
Place the code for centering the window in the custom center() method.
qr = self.frameGeometry()
The frameGeometry() method allows us to create an invisible rectangle and set its own width and height according to the width and height of the main window. The simple understanding is to assign the geometric content (width, height, position, etc.) of this control (QWidget) to qr
cp = QDesktopWidget().availableGeometry().center()
to calculate the screen resolution of your monitor. Based on the obtained resolution we get the center point of the screen.
qr.moveCenter(cp)
Our rectangle (qr) already has a width and height. Now set the center of the mobile rectangle (moveCenter) to the center point (cp) of the screen. The size of the rectangle will remain unchanged.
self.move(qr.topLeft())
Move the upper left corner of the application window to the upper left corner of the qr rectangle so that the application window appears in the center of the screen.
After the program is executed
Related recommendations:
PyQt5 must learn to close the window every day
PyQt5 must learn the pop-up message box every day
PyQt5 realizes the download progress bar effect
The above is the detailed content of PyQt5 must learn every day to create a window centering effect. For more information, please follow other related articles on the PHP Chinese website!