QGraphicsItem如何不重绘
时间: 2024-01-24 08:55:25 浏览: 24
QGraphicsItem可以通过设置QGraphicsItem::ItemIgnoresTransformations flag来避免不必要的重绘。这个flag可以在item的构造函数中设置,也可以通过setItemFlags()函数设置。如果设置了这个flag,那么QGraphicsItem在自身不发生变换的时候将不会重绘。
相关问题
QGraphicsItem所绘图形如何保存
QGraphicsItem并不直接负责保存绘图形状,而是依赖于QGraphicsScene和QGraphicsView类实现图形绘制、编辑和保存。在QGraphicsScene中,所有的图形元素都是由QGraphicsItem派生出来的,可以通过QGraphicsScene::addItem()函数添加到场景中。在QGraphicsView中,可以通过QGraphicsView::render()函数将当前的视图内容导出为图片或PDF等格式进行保存。同时,也可以通过QGraphicsScene::items()函数遍历QGraphicsScene中所有的图形元素,获取其坐标、大小等属性,并将其保存到文件中。具体的保存方式可以根据实际需求和应用场景进行选择。
qgraphicsitem设置不可移动
要设置QGraphicsItem不可移动,可以通过重写mouseMoveEvent()函数并将其禁用来实现。下面是一个示例:
```python
class MyGraphicsItem(QGraphicsItem):
def __init__(self):
super().__init__()
def mouseMoveEvent(self, event):
# 禁用父类中的mouseMoveEvent()函数
pass
```
这样,当你尝试移动该图形项时,它将不会发生任何变化。当然,你还可以在此基础上添加其他的交互操作。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![gz](https://img-home.csdnimg.cn/images/20210720083447.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)