我正在尝试在基于 QtWidget 的应用程序中使用 qml 小部件
QQuickView *view = new QQuickView;
view->setSource(QUrl::fromLocalFile("myqml.qml"));
QWidget *widget = QWidget::createWindowContainer(view);
widget->setMinimumSize(100, 100);
widget->setMaximumSize(1000, 1000);
widget->setFocusPolicy(Qt::TabFocus);
widget->show();
而且该代码不适用于组合框,它们的列表位于错误的位置,看起来 Qt 计算它们相对于屏幕的位置。
如果我不使用小部件并做
view->show()
它工作正常,但我需要使用小部件,将其放入 QSplitter 或 QLayout。
有没有办法让它工作或以其他方式将基于 qml 的小部件放入 QSplitter/QLayout。