Qt4.8版本中QGLFormat的设置问题

QGLWidget的fromat需要使用一个QGLFormat来设置,当不需要将QGLWidget作为一个内嵌到界面中的组件时,可以在类中定义一个QGLFormat实例fmt,在构造函数中设置一些功能,如setDoubleBuffer()、setStereo(),在initializeGL()中使用setFormat(fmt)来实现设置


但在Qt4.8版本中,如果需要将QGLWidget内嵌到一个界面中时,要在类初始化时设置

例如,我们定义一个OpenGLWidget类,该类继承了QGLWidget,那么QGLFormat的设置为


OpenGLWidget(QWidget* parent, const QGLWidget* shareWidget, Qt::WindowFlags f):QGLWidget(QGLFormat(QGL::DoubleBuffer | QGL:: StereoBuffers),parent, shareWidget, f){

。。。

}


也可以参考下边这篇文章

Qt使用OpenGL关闭出错

你可能感兴趣的:(Qt4.8版本中QGLFormat的设置问题)