獲取坐標和尺寸:
坐標的獲取視頻教程:https://v.qq.com/x/page/t085892mzh9.html
x() y() 返回控件的坐標
相對於父控件的坐標(窗口框架左上角)
頂層控件(沒有父控件)則相對於桌面的坐標
pos() x和y的組合
s=window1.pos() PyQt5.QtCore.QPoint(200, 100)
s1=s.x() 返回x坐標 s1=s.y() 返回y坐標
width() 控件的寬度,不包含任何窗口框架
height() 控件的高度,不包含任何窗口框架
size() width和height的組合
s=window1.size() PyQt5.QtCore.QSize(110, 100)
s.width()返回控件的寬度 s1=s.height() 返回控件的高度
geometry() 用戶區域相對於父控件的位置和尺寸組合
s=window1.geometry() PyQt5.QtCore.QRect(120, 100, 110, 100) -->QRect(x, y, width, height)
rect() 0, 0, width, height的組合
s=window1.rect() PyQt5.QtCore.QRect(0, 0, 110, 100)
geometry() 用戶區域相對於父控件的位置和尺寸組合 QRect(x, y, width, height)
frameSize() 框架大小 。一定要在show之后,否則數據錯誤
s=window.frameSize() PyQt5.QtCore.QSize(296, 339)
frameGeometry() 框架位置和大小。一定要在show之后,否則數據錯誤
s=window.frameGeometry() PyQt5.QtCore.QRect(55, 10, 296, 339) 參數1和參數2是move坐標 參數3和參數4是框架大小
注意: 控件顯示完畢之后(show之后), 具體的位置或者尺寸數據才會正確
設置位置和尺寸:
move(x, y) 操控的是x, y;也就是pos 包括窗口框架
resize(width, height) 操控的是寬高 不包括窗口框架
如果小於最小值,就無效
setGeometry(x_noFrame, y_noFrame, width, height) 注意,此處參照為用戶區域
#在show之后設置
adjustSize() 根據內容自適應大小
注意:單次有效,在設置內容后面使用
setFixedSize() 設置固定尺寸
最大和最小尺寸:
minimumWidth() 返回最小尺寸的寬度
minimumHeight() 返回最小尺寸的高度
minimumSize() 返回最小尺寸 PyQt5.QtCore.QSize()
maximumWidth() 返回最大尺寸的寬度
maximumHeight() 返回最大尺寸的高度
maximumSize() 返回最大尺寸
setMaximumWidth() 返回設置最大寬度
setMaximumHeight() 返回設置最大高度
setMaximumSize() 返回設置最大尺寸
setMinimumWidth() 返回設置最小寬度
setMinimumHeight() 返回設置最小高度
setMinimumSize() 返回設置最小尺寸
注意 控件完全展示前后會有所差異
控件內容展示區域:
setContentsMargins(左, 上, 右, 下) 設置控件內容展示區域到邊框的距離
getContentsMargins() 獲取內容邊距 (左, 上, 右, 下) 元組
(50, 50, 0, 0) 就是展示區域到各邊框的距離
contentsRect() 獲取控件內容展示區域的位置和大小。
QRect(50, 50, 150, 50) 參數1參數2 :展示區域到控件左上角的坐標 參數3:展示區域的寬;參數4:展示區域的高
注意:必須是控件本身留夠對應的大小