首頁 > 後端開發 > Python教學 > PyQt5每天必學之創建視窗居中效果

PyQt5每天必學之創建視窗居中效果

不言
發布: 2018-05-22 10:47:18
原創
3495 人瀏覽過

這篇文章主要介紹了PyQt5每天必學之創建視窗居中效果,使應用程式視窗顯示在螢幕的中心,具有一定的參考價值,有興趣的小夥伴們可以參考一下

本文實例為大家分享了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每天必學關閉視窗

PyQt5每天必學之彈出訊息框

PyQt5實作下載進度條效果


############################################### ###########

以上是PyQt5每天必學之創建視窗居中效果的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板