多个QGraphicsView一个scene
时间: 2024-01-04 14:52:23 浏览: 205
在Qt中,可以通过将多个QGraphicsView连接到同一个场景(QGraphicsScene)来实现对相同数据集的多个视口。通过调用QGraphicsView的setScene()函数,将需要显示的场景设置为该视图的场景。然后,调用show()函数来显示视图的内容。每个QGraphicsView将默认滚动到场景的中心。
以下是一个例子,演示了如何创建多个QGraphicsView连接到同一个场景:
```cpp
#include <QApplication>
#include <QGraphicsScene>
#include <QGraphicsView>
#include <QGraphicsItem>
int main(int argc, char *argv[]) {
QApplication a(argc, argv);
QGraphicsScene scene;
QGraphicsView view1;
QGraphicsView view2;
view1.setScene(&scene);
view2.setScene(&scene);
view1.show();
view2.show();
return a.exec();
}
```
在上述例子中,我们创建了一个QGraphicsScene对象scene,以及两个QGraphicsView对象view1和view2。然后,通过调用setScene()函数将场景设置为视图的场景。最后,通过调用show()函数来显示视图。
这样,我们就创建了多个QGraphicsView连接到同一个场景,它们都可以显示相同的数据集,并可以通过滚动条来浏览大的场景。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [QGraphicsView,QGraphicsScene和QGraphicsItem](https://blog.csdn.net/weixin_43956958/article/details/125516146)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* [图形视图框架QGraphicsView(视图,概念)](https://blog.csdn.net/qq_45303986/article/details/129639179)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文