Home Backend Development Python Tutorial PyQt5 must learn every day to create a window centering effect

PyQt5 must learn every day to create a window centering effect

May 22, 2018 am 10:47 AM
pyqt5 create window

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_())
Copy after login

The QtGui.QDesktopWidget class provides information about the user's desktop, including screen size.

self.center()
Copy after login

Place the code for centering the window in the custom center() method.

qr = self.frameGeometry()
Copy after login

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()
Copy after login

to calculate the screen resolution of your monitor. Based on the obtained resolution we get the center point of the screen.

qr.moveCenter(cp)
Copy after login

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())
Copy after login

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!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article

Hot Article

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to set Google Chrome to open a new window every time How to set Google Chrome to open a new window every time Mar 06, 2024 pm 06:19 PM

How to set Google Chrome to open a new window every time

How to create a constant in Python? How to create a constant in Python? Aug 29, 2023 pm 05:17 PM

How to create a constant in Python?

How to install pyqt5 How to install pyqt5 Nov 30, 2023 pm 02:05 PM

How to install pyqt5

How to personalize your iPhone on the latest iOS 17 How to personalize your iPhone on the latest iOS 17 Sep 21, 2023 am 08:17 AM

How to personalize your iPhone on the latest iOS 17

How to create pixel art in GIMP How to create pixel art in GIMP Feb 19, 2024 pm 03:24 PM

How to create pixel art in GIMP

How to create a family with Gree+ How to create a family with Gree+ Mar 01, 2024 pm 12:40 PM

How to create a family with Gree+

How to create a Gantt chart using Highcharts How to create a Gantt chart using Highcharts Dec 17, 2023 pm 07:23 PM

How to create a Gantt chart using Highcharts

How to Create a Contact Poster for Your iPhone How to Create a Contact Poster for Your iPhone Mar 02, 2024 am 11:30 AM

How to Create a Contact Poster for Your iPhone

See all articles