QT 在 QGraphicsView 中使用 opengl 不能够刷新的解决方案
时间: 2024-02-03 09:15:42 浏览: 52
如果在 QGraphicsView 中使用 OpenGL 时无法刷新,可能是因为没有正确地在场景中添加 OpenGL 视图。下面是一些可能的解决方案:
1. 确认场景中已经添加了 OpenGL 视图。可以使用以下代码创建一个视图并将其添加到场景中:
```cpp
QGraphicsView *view = new QGraphicsView;
QGraphicsScene *scene = new QGraphicsScene;
view->setScene(scene);
QGLWidget *glWidget = new QGLWidget(QGLFormat(QGL::SampleBuffers));
view->setViewport(glWidget);
scene->addWidget(glWidget);
```
2. 确认 OpenGL 视图的大小和场景的大小相同。可以通过以下代码设置视图和 OpenGL 视图的大小:
```cpp
view->setFixedSize(scene->width(), scene->height());
glWidget->setFixedSize(scene->width(), scene->height());
```
3. 确认 OpenGL 视图已经设置了正确的 OpenGL 版本。可以在构造函数中添加以下代码以设置 OpenGL 版本:
```cpp
QGLFormat glFormat;
glFormat.setVersion(3, 3);
glFormat.setProfile(QGLFormat::CoreProfile);
glWidget->setFormat(glFormat);
```
希望以上解决方案能够帮助你解决问题。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://img-home.csdnimg.cn/images/20210720083646.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)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)