qt - RadioButton en QML Desktop
radio-button (2)
RadioButton en Componentes de escritorio QML no es compatible con su primer enfoque, pero puede probar esta solución alternativa en su lugar:
property int currentIndex: 1
onCurrentIndexChanged: {
button1.checked = currentIndex == 0
button2.checked = currentIndex == 1
button3.checked = currentIndex == 2
}
Row {
RadioButton {
id: button1
text: "1"
onClicked:{
currentIndex = 0
}
}
RadioButton {
id: button2
text: "2"
onClicked:{
currentIndex = 1
}
}
RadioButton {
id: button3
text: "3"
onClicked:{
currentIndex = 2
}
}
}
tengo 3 botones de radio en mi página (aplicación de escritorio QML), una vez que marqué uno, quiero que todos los demás estén desmarcados. Intenté usar CheckableGroup
con el código que encontré en la ayuda
CheckableGroup { id: group }
Row {
id: row
spacing: platformStyle.paddingMedium
RadioButton {
id: button1
text: "1"
platformExclusiveGroup: group
}
RadioButton {
id: button2
text: "2"
platformExclusiveGroup: group
}
RadioButton {
id: button3
text: "3"
platformExclusiveGroup: group
checked: true
}
}
pero recibo un error "platformExclusiveGroup no es un nombre de propiedad válido" probé con otra solución
RadioButton{
id:rbtnDecimal1;
width: 130;
onClicked:{
if(checked){
rbtnHexadecimal1.checked=false;
rbtnString1.checked=false;
}
}
text: "Decimal Data";
anchors.left:rbtnHexadecimal1.right
}
que cuando se marca uno de los botones, todos los demás se desmarcan, pero los otros botones se marcan hasta que mueva el mouse sobre ellos - se desmarcan.
alguna idea de cómo implementarlo?
Debe especificar un grupo ExclusiveGroup
para RadioButton
.
Row {
id: row
ExclusiveGroup { id: group }
RadioButton {
id: button1
text: "1"
exclusiveGroup: group
}
RadioButton {
id: button2
text: "2"
exclusiveGroup: group
}
RadioButton {
id: button3
text: "3"
exclusiveGroup: group
checked: true
}
}