我可以看到我的应用程序显示此错误,我在调试器中运行,并且当显示此错误时应用程序在同一行停止。
如果有任何进一步的信息,我可以找到一个线索,说明为什么要显示它?
代码看起来很好,所有指针和变量看起来都正确,但是有些东西导致了问题,代码:
pobjPainter->setBackgroundMode(Qt::OpaqueMode);
pobjPainter是指向QPainter
实例的指针,它已经设置并处于活动状态。
我一直在将应用程序从QWidget
转换为QOpenGLWidget
,这是一项正在进行中的工作,所以我希望会有一些问题,但除此之外是否有任何进一步的信息或帮助相当神秘而且不是很有帮助的消息?
QPainter创建如下,这在paintGL方法中调用,对象派生自公共QOpenGLWidget,受保护的QOpenGLFunctions:
//Get painter object
QPainter objVisible;
//Set-up the painter
objVisible.begin(this);
然后传递给每个对象类型的渲染例程:
renderText(&objVisible, &rctGeom, &rctInterior);
最后我打电话给:
objVisible.end();
退出之前。
此屏幕截图更详细地显示了堆栈跟踪,看起来崩溃发生在其中一个openGL例程中: