当我尝试执行此代码时,我有一种奇怪的行为让我烦恼:
import QtQuick 2.7
import QtQuick.Controls 2.0
ApplicationWindow {
id: window
visible: true
width: 640
height: 480
Rectangle {
color: "green"
width: parent.width/2
height: parent.height
anchors.right : parent.right
ComboBox {
id:combo
popup.visible: combo.activeFocus
model: [ "Banana", "Apple", "Coconut" ]
}
}
CheckBox {
id:check
}
}
如果我点击CheckBox
然后点击ComboBox
,ComboBox.popup
将在1毫秒内显示,然后消失。
我不明白为什么,因为activeFocus = true
你知道为什么吗?
答案 0 :(得分:1)
如果您遵循导致它的事件链,则会出现此行为:
ComboBox
ComboBox
获得activeFocus
ComboBox.popup
变为visible
ComboBox
becoms隐身。删除行
popup.visible: combo.activeFocus
你没事。
通过open()
和close()
来控制可见性。