7

我已经通过 QGraphicsProxyWidget 将 QOpenGLWidget 添加到 QGraphicsView(不要使用 setviewport):

QSurfaceFormat format= QSurfaceFormat();
format->setSamples(4); //<== widget show black screen if samples =4, 1 is ok but not antialiasing
m_glWidget->setFormat(format);

MyGraphicsProxyWidget* proxy= new MyGraphicsProxyWidget();
proxy->setWidget(m_glWidget);
//add to scene
scene->addItem(proxy);

我尝试了一些方法但不起作用:如果样本 = 4,glwidget 显示黑屏,但样本 = 1 可以,但不能抗锯齿。那么如何在 QGraphicsView 中为 QOpenGLWidget(由 GraphicsproxyWidget 添加)启用抗锯齿功能呢?

有什么帮助吗?谢谢!

4

1 回答 1

5

在 qapplication 初始化下将代码附加到 main.cpp

QSurfaceFormat fmt;
fmt.setSamples(10); 
QSurfaceFormat::setDefaultFormat(fmt);
于 2015-12-29T12:02:24.430 回答