Qt的TabWidget中的OSGViewer [英] OSGViewer in Qt's TabWidget

查看:402
本文介绍了Qt的TabWidget中的OSGViewer的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用OpenSceneGraph 3.0.1,使用

I am using OpenSceneGraph 3.0.1 and having a problem with the Qt integration using the

osgQt::GLWidget,在启动过程中将其添加到选项卡控件中(在我的主窗口的构造函数内部.

osgQt::GLWidget when adding it to a tab control during startup (inside the constructor of my main window.

MainWindow::MainWindow(QWidget* parent)
    :  QMainWindow(parent), ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    QWidget* viewerWidget = new MyViewerWidget(new osgViewer::Viewer());

    ui->tabWidget->addTab(viewerWidget, "My Osg View");

    // tab entry was added but nothing to see than empty Osg Window
}

在显示主窗口后从菜单中调用代码时,它可以工作:

It works, when calling the code from a menu after displaying the main window:

void gcdrp::MainWindow::on_actionCreate_Simulation_View_triggered()
{
    QWidget* viewerWidget = new MyViewerWidget(new osgViewer::Viewer());

    ui->tabWidget->addTab(viewerWidget, "My Osg View");

    // tab with content is visible (as expected)
}

似乎场景图被搞砸了.有什么想法吗?

It seems like the scene graph is screwed up. Any ideas?

推荐答案

适用于setMinimumSize:

Works with setMinimumSize:

QWidget* viewerWidget = new MyViewerWidget(new osgViewer::Viewer());

viewerWidget->setMinimumSize( ui->tabWidget->width(), ui->tabWidget->height());

这篇关于Qt的TabWidget中的OSGViewer的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆