這篇文章主要介紹了PyQt5每天必學之建立視窗置中效果,使應用程式視窗顯示在螢幕的中心,具有一定的參考價值,感興趣的小夥伴們可以參考一下
本文執行個體為大家分享了PyQt5如何能夠建立在案頭螢幕上置中視窗的具體代碼,供大家參考,具體內容如下
下面的指令碼說明我們如何能夠建立在案頭螢幕上置中的視窗。
#!/usr/bin/python3# -*- coding: utf-8 -*-"""PyQt5 教程這個程式是將一個視窗顯示在螢幕的中心。作者:我的世界你曾經來過部落格:http://blog.csdn.net/weiaitaowang最後編輯:2016年7月30日"""import sysfrom PyQt5.QtWidgets import QApplication, QWidget, QDesktopWidgetclass 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())
行動裝置 App程式視窗的左上方到qr矩形的左上方,從而使應用程式視窗顯示在螢幕的中心。
程式執行後