2017-01-16 14 views
2

Я использую Qt 5.7 и QtQuick.Controls 2.0. Я бы хотел, чтобы мой ComboBox был открыт по умолчанию. Для этого я просто установил popup.visible в true, но, к сожалению, я получил следующую ошибку в консоли: QML Popup: cannot find any window to open popup in.. Щелчок на моем ComboBox открывается и закрывает его просто отлично, без сообщений об ошибках. Я даже пытался сделать Component.onCompleted: _popup.open(), где _popup - это id моего компонента Popup внутри моего ComboBox, но появляется такое же сообщение об ошибке.Как сделать ComboBox открытым по умолчанию в QML

EDIT 1 (добавить простой пример):

ApplicationWindow { 
    width: 200 
    height: 200 

    Item { 
    anchor.fill: parent 

    ComboBox { 
     popup.visible: true 
     model: ["First", "Second", "Third"] 
    } 
    } 

ответ

1

Обновление для Qt 5.7.1 решить проблему для меня, спасибо за предложение @BaCaRoZzo!

EDIT 1:

Как примечание стороны я хотел бы добавить, что если вы получаете сообщение QML Popup: cannot find any window to open popup in. это также может произойти из-за компонента Popup не может найти его родителей. Это может произойти, если всплывающее окно создается, например, в состоянии StateMachine. В этом случае вы должны явно установить свойство parent всплывающего окна!

 Смежные вопросы

  • Нет связанных вопросов^_^