我创建了一个Qt界面来可视化3D模型(点云)和图像。问题是,当我切换到全屏时,(例如使用按键F1),我按预期获得全屏模式。但是当我切换到普通模式时,3D模型会在小部件中消失,如下图所示。
在QMainWindow中插入QGLWidget:
QMainWindow:setCentralWidget(viewerWidget);
我们的3D引擎类,OpenGLViewer继承了QGLWidget
切换完整窗口的功能如下:
void OpenGLViewer::toggleFullWindow()
{
if (isFullScreen()) {
setWindowFlags(Qt::Widget);
showNormal();
}
else {
setWindowFlags(Qt::Window);
showFullScreen();
}
}
我的ui小部件就像这样
QLabel* App::createViewerBox()
{
viewerWidget = dynamic_cast<QWidget*>(viewer);
QHBoxLayout *layoutHor = new QHBoxLayout();
QLabel *frame = new QLabel();
layoutHor->addWidget(viewerWidget,Qt::AlignJustify);
frame->setLayout(layoutHor);
return frame;
}