pyQt5 窗口坐标系

在这里插入图片描述

https://stuff.mit.edu/afs/athena/software/texmaker_v5.0.2/qt57/doc/qtwidgets/application-windows.html
在这里插入图片描述

QWidget 包括 标题栏 和边框 和客户区
标题栏 就是上图中的蓝色的Window Title
边框就是 上图中的黑灰色的 外框 ,有一定的宽度
Client Area 就是 客户区 ,灰白色

在这里插入图片描述

pyQt5

import sys
from PyQt5.QtWidgets import QApplication, QWidget

app = QApplication(sys.argv)
window = QWidget()
window.resize(300, 200)
window.move(250, 150)
window.setWindowTitle('Hello PyQt5')
window.show()
sys.exit(app.exec_())    

运行效果:
在这里插入图片描述
这个是一个 QWidget 窗口,窗口 包括客户区,边框和标题栏

对应的 代码:

from PyQt5.QtWidgets import QApplication  ,QWidget  ,QPushButton
import sys  
              
app = QApplication(sys.argv)
widget = QWidget()
btn = QPushButton( widget )
btn.setText("Button")
#以QWidget左上角为(0, 0)点
btn.move(20, 20)   
#不同操作系统可能对窗口最小宽度有规定,若设置宽度小于规定值,则会以规定值进行显示
widget.resize(300, 200) 
#以屏幕左上角为(0, 0)点
widget.move(250, 200)

widget.setWindowTitle('PyQt坐标系统例子')
widget.show()
print("#1 QWidget")
print("widget.x()=%d" % widget.x() )
print("widget.y()=%d" % widget.y() )
print("widget.width()=%d" % widget.width() )
print("widget.height()=%d" % widget.height() )

print("#2 QWidget.geometry")
print("widget.geometry().x()=%d" %  widget.geometry().x() )
print("widget.geometry().y()=%d" %  widget.geometry().y() )
print("widget.geometry().width()=%d" %  widget.geometry().width() )
print("widget.geometry().height()=%d" %  widget.geometry().height() )
print("widget.size().width() =%d" %  widget.size().width() )
print("widget.size().height() =%d" %  widget.size().height() )

print("#3 QWidget.frameGeometry")
print("widget.frameGeometry().width()=%d" %  widget.frameGeometry().width() )
print("widget.frameGeometry().height()=%d" %  widget.frameGeometry().height() )
print("widget.pos().x()=%d" %  widget.pos().x() )
print("widget.pos().y()=%d" %  widget.pos().y() )

sys.exit(app.exec_())  

在这里插入图片描述
log :

D:\PYTHON_ENV\py372_64_env\Scripts\python.exe F:/pyqt5/example/PyQt5快速开发与实战_Code/Chapter04/qt401_widgetGeometry.py
#1 QWidget
widget.x()=250
widget.y()=200
widget.width()=300
widget.height()=200
#2 QWidget.geometry
widget.geometry().x()=259
widget.geometry().y()=236
widget.geometry().width()=300
widget.geometry().height()=200
widget.size().width() =300
widget.size().height() =200
#3 QWidget.frameGeometry
widget.frameGeometry().width()=318
widget.frameGeometry().height()=245
widget.pos().x()=250
widget.pos().y()=200

PyQt5 快速开发与实战 pdf

发布了824 篇原创文章 · 获赞 313 · 访问量 105万+

猜你喜欢

转载自blog.csdn.net/wowocpp/article/details/105221265
今日推荐