国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

python GUI庫圖形界面開發之PyQt5窗口控件QWidget詳細使用方法

瀏覽:75日期:2022-08-06 08:09:01
QWidget基本介紹

基礎窗口控件QWidget類是所有用戶界面對象的基類,所有的窗口或者控件都直接或者間接的繼承自QWidget類。

窗口坐標系統

PyQt使用統一的坐標系統來定位窗口控件的位置和大小,具體如下

python GUI庫圖形界面開發之PyQt5窗口控件QWidget詳細使用方法

以屏幕左上角為原點,也就是(0, 0)點,從左向右為x軸正方向,從上向下為y軸正方向,整個屏幕的坐標系統用來定位頂層窗口。

在窗口內部也有自己的坐標系統,該坐標系統以客戶區的左上角為原點,從左向右為x軸正方向,從上到下為y軸正方向,在客戶區周圍有標題欄和邊框。

python GUI庫圖形界面開發之PyQt5窗口控件QWidget詳細使用方法

從上圖中,可以將這些成員函數分成三類:

QWidget直接提供的成員函數,x(), y()獲得整個窗口左上角的坐標,width()和height()返回客戶區的寬度和高度。 QWidget的geometry()提供的成員函數,x(),y()返回的是客戶區左上角坐標,width(),height()返回客戶區寬度和高度。 QWidget的frameGeometry()提供的成員函數,x(),y()返回的是整個窗口左上角的坐標,-width(),height()也是整個對話框的寬度和高度,包括標題欄和邊框。

從上圖可以看出來,QWidget有兩種常見的幾何結構

不包含外面各種邊框的幾何結構(客戶區)。

包含各種邊框的幾何結構。

不包含邊框常用函數

改變客戶區面積

QWidget.resize(width, height)

獲取客戶區大小

QWidget.size()

獲取客戶區的寬度和高度

QWidget.width()

QWidget.height()

設置客戶區的寬度和高度(在某些維度上值不可改變)

QWidget.setFixedWidth(int width)

QWidget.setFixedHeight(int height)

QWidget.setFixedSize(int width, int height)

設置窗口的位置(值可以改變)

QWidget.setGeometry(int x, int y, int width, int height)

包含邊框常用函數

獲取窗口的大小和位置

QWidget.frameGeometry()

設置窗口的位置

QWidget.move(int x, int y)

獲取窗口左上角坐標

QWidget.pos()

屏幕坐標系統實例

from PyQt5.QtWidgets import QApplication,QMainWindow,QWidget,QPushButtonimport sysapp=QApplication(sys.argv)#窗口widget=QWidget()#按鈕繼承在窗口中,并實例化btn=QPushButton(widget)#按鈕命名btn.setText(’button’)#以QWdiget左上角為(0,0)點,按鈕移動到坐標處btn.move(20,20)#不同的操作系統可能對窗口的最小寬度有規定,若設置寬度小于規定值,則會以規定值進行顯示widget.resize(300,200)#以屏幕左上角為(0,0)的點,窗口移動到指定坐標處widget.move(250,200)widget.setWindowTitle(’pyqt坐標系統例子’)widget.show()#輸出窗口的rect(x,y,width,height)print(’QWidget:’)#x,y獲取窗口左上角的坐標print(’w.x()=%d’ %widget.x())print(’w.y()=%d’ %widget.y())#width,height獲取客戶區的寬度與高度print(’w.width()=%d’ %widget.width())print(’w.height()=%d’ %widget.height())#客戶區的大小print(’客戶區的大?。?d’ %widget.size())print(’QWidget.geometry’)#x,y獲取客戶區的左上角坐標(包含窗口的標題與邊框部分)print(’widget.geometry().x()=%d’ %widget.geometry().x())print(’widget.geometry().y()=%d’ %widget.geometry().y())#width,height獲取客戶區的寬度與高度print(’widget.geometry().width()=%d’ %widget.geometry().width())print(’widget.geometry().height()=%d’ %widget.geometry().height())sys.exit(app.exec_())

效果如下圖:輸出客戶區的相關屬性

python GUI庫圖形界面開發之PyQt5窗口控件QWidget詳細使用方法

設置程序圖標實例

import sysfrom PyQt5.QtGui import QIconfrom PyQt5.QtWidgets import QWidget,QApplication#創造一個名為Icon的窗口類,繼承自Qwidgetclass Icon(QWidget): def __init__(self,parent=None): super(Icon, self).__init__(parent) self.initUI() #初始化窗口 def initUI(self): #設置窗口在屏幕中的位置與窗口的大小 self.setGeometry(300,300,250,150) self.setWindowTitle(’程序圖標’) #設置窗口圖標,需要提供圖標的路徑 self.setWindowIcon(QIcon(’E:pyqt5快速開發與實戰第四章imagescartoon1.ico’))if __name__ == ’__main__’: app=QApplication(sys.argv) icon=Icon() icon.show() sys.exit(app.exec_())

效果如下:實現了程序左上角圖標的加載

python GUI庫圖形界面開發之PyQt5窗口控件QWidget詳細使用方法

顯示氣泡提示信息實例

import sysfrom PyQt5.QtGui import QFontfrom PyQt5.QtWidgets import QWidget,QApplication,QToolTipclass WinForm(QWidget): def __init__(self,parent=None): super(WinForm, self).__init__(parent) self.initUI() def initUI(self): #設置氣泡提示信息的字體和大小 QToolTip.setFont(QFont(’SansSerif’,10)) #設置氣泡提示 self.setToolTip(’這是一個</b>氣泡顯示</b>’) self.setGeometry(200,300,400,400) self.setWindowTitle(’氣泡提示demo’)if __name__ == ’__main__’: app=QApplication(sys.argv) win=WinForm() win.show() sys.exit(app.exec_())

本文詳細介紹了PyQt5窗口控件QWidget詳細使用方法,要了解更多關于這方面的知識請查看下面的相關鏈接

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 久草黄视频 | 久草精品在线 | 欧美在线香蕉在线现视频 | 国产成人精品免费视频网页大全 | 日韩经典欧美精品一区 | 日韩国产欧美精品综合二区 | 好吊色37pao在线观看 | 久久爱噜噜噜噜久久久网 | 99免费在线播放99久久免费 | 日韩中文在线观看 | 国产最爽的乱淫视频国语对 | 欧美一级毛片欧美一级无片 | 久久久久国产成人精品亚洲午夜 | 天堂一区二区三区在线观看 | 毛片三级 | 依依成人综合网 | 国产精品久久久久久久久 | 精品日韩一区二区三区视频 | 久久国产欧美日韩高清专区 | 久草观看视频 | 欧美一级特黄一片免费 | 久久视频6免费观看视频精品 | 日韩欧美精品综合一区二区三区 | 午夜在线社区视频 | 国产一二三区精品 | 国产免费黄视频 | 日本精品高清一区二区2021 | 日韩美女网站在线看 | 久久99国产精品久久欧美 | 日韩高清一级 | 国产在线一区二区三区四区 | 亚洲精彩视频在线观看 | 性做久久久久免费观看 | 沈樵在线观看福利 | 欧美一级精品 | 亚洲福利精品一区二区三区 | 一级特黄aaa大片在线观看 | 久久视频在线视频 | 欧美性色黄大片一级毛片视频 | 91精品国产薄丝高跟在线看 | 综合中文字幕 |