我的问题是我想创建一个Qt3DWindow
,我使用QWidget::createWindowContainer
将其嵌入到我的程序中。
我现在升级到Ubuntu 17.10但是只要我添加容器小部件,我的CPU负载就会达到100%不变。
这在Ubuntu 16.04和Windows下已经有效。
有谁知道这个问题,甚至可能有解决方案?或者我是否必须再次降级到Ubuntu 16.04?
最简单的工作示例是在Qt Creator中创建一个新项目并选择Qt Widgets Application,最后用以下内容替换mainwindow.cpp
中的代码:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QHBoxLayout>
#include <Qt3DExtras/Qt3DWindow>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->centralWidget->setLayout(new QHBoxLayout());
Qt3DExtras::Qt3DWindow *window = new Qt3DExtras::Qt3DWindow;
QWidget *widget = QWidget::createWindowContainer(window);
ui->centralWidget->layout()->addWidget(widget);
}
MainWindow::~MainWindow()
{
delete ui;
}
现在将3dextras
添加到项目的.pro文件中的QT += core gui
并运行它。这会在我的机器上产生高CPU负载。