您的位置:首页 > 其它

QML之CheckBox与ComboBox

2017-09-15 23:38 21 查看
checkbox启用部分选中

partiallyCheckedEnabled:true

CheckBox的exclusiveGroup属性可以将几个CheckBox对象组成一个互斥的组,当其中之一被选中时候,其余会自动取消选择。

ComboBox

ApplicationWindow{
visible:true;
width:480;
height:480;
ComboBox{
width:200;
currentIndex:2;
model:ListModel{
id:cbItems
ListElement{
text:"Banana";
color:"Yellow"
}
ListElement{
text:"Apple";
color:"Green"
}
ListElement{
text:"Coconut";
color:"Brown"
}
}
onCurrentIndexChanged:{
console.log(
cbItems.get(currentIndex).text
+","+
cbItems.get(currentIndex).color)
}
}
}


创建一组ListModel对象,ListModel由一组ListElement对象构成。每一个ListElemnet都可以设置一个text属性,作为显示的文本,另外还可以添加额外的用户数据,用于对这个数据的描述,如我们这里添加ListElement对象增加了一个color属性。

editable:设置这个ComboBox是不是可以编辑,将其设置为true的时候,下拉框允许用户编辑数据。

在用户输入时候,ComboBox会自动显示下拉框中匹配的数据,还可以通过accepted信号确定是否可以将用户输入的数据添加到下来框中。不过在添加新数据的时候,需要确定下拉框中没有重复项。

当输入完一个字符串并按下回车键,会执行accepted信号。



ComboBox{
id:editableCombo;
editable: true
model: ListModel{
id:model;
ListElement{
text:"banana";color:"Yellow"
}
ListElement{
text:"apple";color:"Green"
}
ListElement{
text:"Coconut";color:"Brown"
}
}
onAccepted: {
if(editableCombo.find(currentText)===-1){
model.append({text:editText})
4000

currentIndex=editableCombo.find(editText)
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: