qml ComboBox详解
创作时间:
作者:
@小白创作中心
qml ComboBox详解
引用
CSDN
1.
https://m.blog.csdn.net/ckg3824278/article/details/145550158
ComboBox是Qt Quick Controls中的一个用户界面组件,它结合了按钮和弹出列表的特点,提供了一种节省空间的方式来展示选项列表。用户可以从下拉列表中选择一个项目,适用于需要用户从一系列预定义选项中进行选择的场景。
重要属性
ComboBox拥有多个重要属性,用于配置其行为和外观,以下是一些关键属性:
- model:定义ComboBox中可用的选项集合。它可以是JavaScript数组、ListModel或其他类型的数据模型。
- currentIndex:保存ComboBox中当前项的索引。只读属性,当count为0时默认值为-1,否则默认值为0。
- currentText:当前项的文本。只读属性。
- displayText:保存在ComboBox按钮上显示的文本。默认情况下,显示当前选择项的文本,但可以使用自定义值覆盖。
- editable:控制ComboBox是否可编辑。默认值为false。
- flat:控制ComboBox按钮是否平坦。默认值为false,除非与之交互,否则扁平ComboBox按钮不会绘制背景。
- popup:包含弹出窗口。可以自定义下拉列表的样式和行为。
- textRole:表示用于填充ComboBox的模型角色。当模型有多个角色时,可以设置textRole来确定应该显示哪个角色。
- validator:可编辑ComboBox的输入文本验证器。当设置了验证器时,文本字段将只接受使文本属性处于中间状态的输入。
重要方法
ComboBox提供了一些方法用于操作其项和视图,以下是一些关键方法:
- decrementCurrentIndex():如果弹出列表可见,则递减ComboBox的当前索引或突出显示的索引。
- find(string text, flags):返回指定文本的索引,如果未找到匹配项,则返回-1。
- incrementCurrentIndex():如果弹出列表可见,则增加ComboBox的当前索引或突出显示的索引。
- selectAll():选择ComboBox的可编辑文本字段中的所有文本。
- textAt(int index):返回指定索引的文本,如果索引超出范围,则返回空字符串。
重要信号
ComboBox发出信号以响应用户交互和状态变化,以下是一些关键信号:
- activated(int index):在用户从下拉列表中选择(或激活)一个项目时发出。这个信号通常用于在用户选择一个项目时执行某些操作。
- currentIndexChanged(int index):在ComboBox的当前选中项索引改变时发出。这个信号通常用于在当前索引变化时更新与ComboBox相关的其他界面元素或执行某些操作。
- highlighted(int index):当弹出列表中索引处的项目被用户突出显示时发出。
示例代码
Window {
visible: true
width: 640
height: 480
title: qsTr("ComboBox Example")
ComboBox {
editable: true
model: ListModel {
id: model
ListElement { text: "Banana" }
ListElement { text: "Apple" }
ListElement { text: "Coconut" }
}
onAccepted: {
if (find(editText) === -1)
model.append({text: editText})
}
onCurrentIndexChanged: {
console.log(currentIndex)
}
onCurrentTextChanged: {
console.log(currentText)
}
}
}
热门推荐
秋季脱发来袭,职场人如何拯救秀发?
脱发救星:蛋白质的秘密武器
吃鸡蛋真的能拯救你的脱发危机吗?
猪肝食疗方,告别头晕贫血
冬季养生,中医教你告别头晕贫血
冬季养生必备:贫血头晕的神药组合
头晕贫血患者的心理调节指南
中老年奶粉选购指南:如何为家人挑选最适合的营养伴侣
老来骨头脆,打个喷嚏都会碎?如何科学补钙,医生有话说
中药酒养生全攻略:从选购到饮用,这些要点需谨记
高情商感谢句,老板听了都开心
职场礼仪:感谢老板的高情商艺术
感恩老板,职场人的心灵密码
《我的世界》附魔书使用方法介绍
御方柏寿无敌药酒:国药准字号认证
立冬养生,立普妥教你科学降脂
红枣补血效果如何?现代医学与中医理论的双重解读
贫血职场人自救指南:快速补血重返巅峰
明星自曝贫血经历,揭秘科学补铁法
阿乐挑战立普妥:国产药崛起的里程碑
立普妥 vs 国产阿托伐他汀,谁才是降脂王者?
贾跃亭最新访谈:FF获3000万融资,首款AIEV计划2025年底下线
贾跃亭7亿美元可清偿债务,FF 91发布会将成回国首秀
贾跃亭FF面临退市,6000万融资难挽颓势
汽车隔音这样做:6种材料让车内安静如图书馆
汽车隔音止震技术全解析:从原理到施工,打造静谧车内空间
性能更优更环保,丁基胶材料引领汽车隔音升级
洛阳千唐志斋:中国唯一墓志铭博物馆,藏1400余件石刻珍品
1923年洛阳:康有为张钫因吴佩孚而相知
阿乐挑战立普妥,谁才是心血管救星?