我有一个QStringList属性,我基本上想要动态地将它变成一组单选按钮,这样当QStringList属性改变按钮的数量时,它们的标签会自动更新 .
我可以用ListView来做,但它有问题:
-
这不是一个真正的桌面小部件,所以你拥有所有的移动设备 .
-
我无法获得ListView选项,单选按钮检查可以很好地进行交互 .
无论如何,这是我的尝试 . 我理想情况下喜欢在没有ListView的情况下这样做:
ListView {
id: myList
orientation: ListView.Horizontal
ExclusiveGroup {
id: myListExclusiveGroup
}
Component {
id: myDelegate
RadioButton {
text: modelData
onCheckedChanged: {
if (checked)
myList.currentIndex = index
}
exclusiveGroup: myListExclusiveGroup
}
}
model: myListOfStrings
delegate: myDelegate
focus: true
}
1 回答
感谢koopajah,我将其更改为使用
Repeater
,现在可以使用了 . 请注意,似乎Repeater
将所有内容添加到其父级的末尾's children, which means you can'依赖于它在布局中的位置 - 您必须将其放在另一个布局中,例如: