pyqt5获取graphicsView的尺寸
时间: 2023-06-02 13:04:23 浏览: 194
您好!关于pyqt5获取graphicsView的尺寸,您可以使用以下代码:
```python
view_width = graphicsView.width()
view_height = graphicsView.height()
```
其中,graphicsView是您的视图名称。这段代码将返回graphicsView的宽度和高度。
希望能对您有所帮助!如果您还有其他问题,欢迎继续提问。
相关问题
pyqt5怎么获取self.graphicsView.scale的坐标
您可以使用`self.graphicsView.mapToScene()`方法将视图坐标转换为场景坐标,然后使用场景坐标进行计算。具体地,您可以使用以下代码获取缩放后的坐标:
```python
# 获取视图坐标
view_pos = self.graphicsView.mapFromGlobal(QCursor.pos())
# 转换为场景坐标
scene_pos = self.graphicsView.mapToScene(view_pos)
# 获取缩放比例
scale = self.graphicsView.transform().m11()
# 计算缩放后的坐标
scaled_pos = scene_pos / scale
```
其中,`view_pos`是视图坐标,`scene_pos`是场景坐标,`scale`是当前缩放比例,`scaled_pos`是缩放后的坐标。
pyqt Graphics 获取鼠标单击位置
要在 PyQt 中获取鼠标的单击位置,你可以使用 QGraphicsView 的 mousePressEvent() 方法。下面是一个示代码,展示如何获取鼠标单击位置:
```python
from PyQt5.QtWidgets import QGraphicsView, QApplication, QGraphicsScene
from PyQt5.QtCore import Qt
class MyGraphicsView(QGraphicsView):
def __init__(self):
super().__init__()
self.setScene(QGraphicsScene())
def mousePressEvent(self, event):
if event.button() == Qt.LeftButton:
pos = event.pos()
# 在这里处理鼠标单击位置的逻辑
print(f"Mouse clicked at ({pos.x()}, {pos.y()})")
if __name__ == "__main__":
app = QApplication([])
view = MyGraphicsView()
view.show()
app.exec_()
```
在这个例子中,我们创建了一个自定义的 QGraphicsView 类 MyGraphicsView,并重写了它的 mousePressEvent() 方法。当鼠标按下时,如果是左键按下,我们获取鼠标的位置,并进行处理(这里只是简单地打印出来)。
你可以将你的具体逻辑代码放在 mousePressEvent() 方法中,以根据鼠标点击位置执行相应的操作。
希望这个例子能帮到你!