मेरे पास एक टेक्स्ट फ़ील्ड है जिसे मैं एक आवश्यक फ़ील्ड के रूप में टॉगल करना चाहता हूं या चेकबॉक्स चेक किए जाने पर आधारित नहीं है। मुझे अच्छा खेलने के लिए ValueChangeEventListener नहीं मिल रहा है।
अभी तक मेरे पास इतना ही है:
private TextField myTextField = new TextField("Name");
myTextField.setRequired(true);
private CheckBox myCheckBox;
myCheckBox = createCheckBox();
private CheckBox createCheckbox() {
CheckBox checkBox = new CheckBox("My checkbox");
checkBox.setImmediate(true);
checkBox.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
toggleRequired();
}
});
return checkBox;
}
private void toggleRequired() {
if (myCheckBox.getValue() != true) {
myTextField.setRequired(false);
} else {
myTextField.setRequired(true)
}
}
ValueChangeListener को कई बार सही से गलत पर वापस सच में जाने के लिए निकाल दिया जाता है। सुनिश्चित नहीं है कि मैं यहां क्या गलत कर रहा हूं और वास्तव में कुछ मदद की सराहना करता हूं।
शुक्रिया
1 उत्तर
ठीक है, मैंने पता लगा लिया! यह एक बहुत ही आसान उपाय था, मुझे बस इतना ही बदलना था
checkBox.addValueChangeListener(new CheckBox.ValueChangeListener() {});
मैं इसके बजाय कुछ निम्नलिखित गुण वर्ग का संदर्भ दे रहा था:
properties.ValueChangeListener();
संबंधित सवाल
नए सवाल
java
जावा एक उच्च स्तरीय प्रोग्रामिंग भाषा है। इस टैग का उपयोग तब करें जब आपको भाषा का उपयोग करने या समझने में समस्या हो। इस टैग का उपयोग शायद ही कभी किया जाता है और इसका उपयोग अक्सर [वसंत], [वसंत-बूट], [जकार्ता-ई], [Android], [javafx], [हडूप], [श्रेणी] और [मावेन] के साथ किया जाता है।
else
शाखा कोmyCheckBox.setRequired(true)
के बजायmyTextField.setRequired(true);
नहीं पढ़ना चाहिए? शायद, आप इसे सरल बनाने के लिए केवलmyTextField.setRequired(myCheckBox.getValue());
लिख सकते हैं।