我试图在MDI子窗口中添加一些qml源文件,当我单击该按钮时,我们将在MDI区域中显示子窗口,并且显示的将是QML源文件。我可以在我的MDI子窗口中添加一些qml吗? 。我非常感谢您对此事的任何回答,建议和想法,谢谢。
这是我在MDI区域中添加子窗口的示例代码,在哪里可以插入用于添加qml源文件的代码?
void MainWindow::on_action_Weather_triggered()
{
subwindow3 = new QMdiSubWindow(mdiArea);
widget3 = new QWidget(subwindow3);
widget3->show();
subwindow3->setWidget(widget3);
subwindow3->resize(500,300);
subwindow3->setWindowTitle("Weather");
subwindow3->setAttribute(Qt::WA_DeleteOnClose,false);
mdiArea->addSubWindow(subwindow3);
subwindow3->hide();
mdiArea->setActiveSubWindow(subwindow3);
subwindow3->show();
}
答案 0 :(得分:2)
您必须使用QQuickWidget
:
*。pro
QT += quickwidgets
*。cpp
QMdiSubWindow *subwindow = new QMdiSubWindow(mdiArea);
QQuickWidget* widget = new QQuickWidget(subwindow);
widget->setResizeMode(QQuickWidget::SizeRootObjectToView);
widget->setSource(QUrl("qrc:/main.qml"));
widget->show();
subwindow->setWidget(widget);
subwindow->resize(500,300);
subwindow->setWindowTitle("Weather");
subwindow->setAttribute(Qt::WA_DeleteOnClose,false);
mdiArea->addSubWindow(subwindow);
mdiArea->setActiveSubWindow(subwindow);
subwindow->show();