0

OpenSceneGraph 3.0.1 を使用していますが、Qt との統合に問題があります。

osgQt::GLWidget起動時にタブコントロールに追加するとき(メインウィンドウのコンストラクター内.

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
}

メインウィンドウを表示した後にメニューからコードを呼び出すと、機能します。

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)
}

シーン グラフが台無しになっているようです。何か案は?

4

1 に答える 1

0

setMinimumSize で動作:

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

viewerWidget->setMinimumSize( ui->tabWidget->width(), ui->tabWidget->height());
于 2013-07-24T08:22:54.420 に答える