我在推广用于GUI的QGLWidget时遇到了Qt的问题。 由于我的QGLWidget的构造函数是
GLWidget::GLWidget( const QGLFormat& format, QWidget* parent )
: QGLWidget( format, parent ),
m_vertexBuffer( QGLBuffer::VertexBuffer ) {}
因此该对象应该像这样实例化
QGLFormat glFormat;
glFormat.setVersion( 3, 3 );
glFormat.setProfile( QGLFormat::CoreProfile );
glFormat.setSampleBuffers( true );
GLWidget w( glFormat, parent );
但是ui_mainwindow.h会自动执行此操作
widget = new GLWidget(centralWidget);
由于每次重新编译UI时都会创建新的ui_mainwindow.h,因此无法对其进行修改。所以我可能不得不在我的maindwindow.cpp中告诉GLWidget要实例化不同于标准构造函数,但是使用QFormat。知道怎么做的吗?
答案 0 :(得分:0)
我认为使用Qt Designer自动生成的代码无法实现这一点。
至少有两种不同的解决方案:
或
我更喜欢后者,因为我喜欢掌控。