Мне нужно сделать снимок экрана с виджетами с содержимым OpenGL (используя классы SoQt 1.5.0 под Qt5.5) и сохранить его в QImage. То, что я пытался до сих пор:Захват виджета с содержимым OpenGL под Qt5.5
- использования grabFrameBuffer из класса QGLWidget (который, кажется, устаревших, так как Qt5): это приводит к черной области
- с использованием grabFramebuffer из класса QOpenGLWidget: захват даже не работает, и нет ни одной области, посвященный ему
- использованием renderPixmap из класса QGLWidget: это приводит к белой области
проблема, кажется, находится в этом, если условие (которое используется QGLWidget: : grabFrameBuffer() под Qt4.8 и которые мы пытаемся перейти на Qt5.5):
if(dynamic_cast<QGLWidget*>(rendererCourant->getNormalWidget()))
{
((QGLWidget*)rendererCourant->getNormalWidget())->updateGL();
_image = ((QGLWidget*)(rendererCourant->getNormalWidget()))->grabFrameBuffer();
}
ли кто-то есть намек на этот вопрос?