选择后 ComboBox QML 不显示项目文本
Posted
技术标签:
【中文标题】选择后 ComboBox QML 不显示项目文本【英文标题】:ComboBox QML does not show item text after selection 【发布时间】:2017-09-10 17:22:59 【问题描述】:我有一个 QML ComboBox,其模型定义为 C++ QList 。 当我打开下拉列表时,我可以看到 C++ 模型中定义的所有项目,但选择后,未显示所选项目。 因此,项目仅在下拉元素中可见。 qml文件的相关部分是:
ComboBox
id: placesCombo
anchors.top: parent.top
width: parent.width
model: myModel
delegate: ItemDelegate
width: placesCombo.width
contentItem: Text
id: placesComboItem
text: displayLabel
elide: Text.ElideRight
verticalAlignment: Text.AlignVCenter
如何在关闭的组合框中显示之前在下拉元素中选择的项目文本?
【问题讨论】:
【参考方案1】:根据docs:
textRole : 字符串
此属性保存用于的模型角色 填充组合框。
当模型有多个角色时,可以设置textRole来判断 应该显示哪个角色。
你必须通过textRole指明要显示的模型的角色。
ComboBox
id: placesCombo
textRole: "displayLabel"
...
【讨论】:
以上是关于选择后 ComboBox QML 不显示项目文本的主要内容,如果未能解决你的问题,请参考以下文章
解决QML开发中ComboBox中一个已选择项没有清除的问题
为啥单击编辑文本后不显示qml虚拟键盘,而我在.pro和main.cpp中调用插件
如何在 QML 的自定义 ComboBox 中突出显示所选项目?