#qt #qml #qtquick2 #qtquickcontrols2
#qt #qml #qtquick2 #qtquickcontrols2
Вопрос:
У меня есть ComboBox
пользовательское Menu
всплывающее окно, которое отображается на a QQuickWidget
. Когда Menu
задается id
свойство, я не могу закрыть его при внешнем нажатии, независимо от того, что closePolicy
я установил.
main.qml
import QtQuick.Controls 2.0
ComboBox {
popup: Menu {
id: menu //comment this line and menu will behave normally
// closePolicy: Popup.CloseOnPressOutside //this doesn't seem to have any effect
}
}
main.cpp:
#include <QApplication>
#include <QQuickWidget>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QQuickWidget *quickWidget = new QQuickWidget;
quickWidget->setSource(QUrl("qrc:/main.qml"));
quickWidget->show();
return a.exec();
}
Я тестировал на Qt 5.14.2 и 5.13.1 MSVC2017. Любая помощь была бы весьма признательна.
Комментарии:
1. В качестве примечания, документы действительно предлагают избегать указания
id
стилей элементов управления, но не по этой причине.2. @JarMan отметил, спасибо за понимание