qt QML डेस्कटॉप में रेडियोबटन




radio-button desktop (2)

मेरे पास मेरे पेज (क्यूएमएल डेस्कटॉप एप्लीकेशन) में 3 रेडियो बटन हैं, एक बार मैंने एक की जांच की तो मैं चाहता हूं कि अन्य सभी को अनियंत्रित किया जाए। मैंने CheckableGroup को मदद से मिला कोड के साथ उपयोग करने की कोशिश की

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
 }
}

लेकिन मुझे एक त्रुटि मिल रही है "PlatformExclusiveGroup एक मान्य गुण नाम नहीं है" मैंने एक और समाधान की कोशिश की

RadioButton{
  id:rbtnDecimal1;
  width: 130;
  onClicked:{
    if(checked){
      rbtnHexadecimal1.checked=false;
      rbtnString1.checked=false;
    }
  }
  text: "Decimal Data";
  anchors.left:rbtnHexadecimal1.right
}

कि जब एक बटन की जांच की जाती है तो बाकी सब अनियंत्रित होते हैं, लेकिन अन्य बटन तब तक चेक आउट हुए, जब तक मैं उन पर माउस नहीं ले जाता- वे अनचेक हो जाते हैं।

किसी भी विचार कैसे इसे लागू करने के लिए?


आपको RadioButton एस के लिए एक ExclusiveGroup निर्दिष्ट करना होगा

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
    }
}

QML डेस्कटॉप घटक में रेडियो बटन अपने पहले दृष्टिकोण का समर्थन नहीं करता है लेकिन आप इसके बजाय इस समाधान का प्रयास कर सकते हैं:

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
        }
    }
}




qml