यहाँ यकीन है कि अकॉर्डियन पूरी तरह से पतन कभी नहीं होगा बनाने के लिए एक और समाधान है:
यहां एक नमूना अनुप्रयोग है। @jewelsea द्वारा महान मूल उत्तर से अंतर थोड़ा कम है - मुझे इस तथ्य को पसंद नहीं आया कि डिफ़ॉल्ट नीचे वाला तीर टाइटलेपेन चेहरे के खुले एग्रीजन से गायब हो रहा था, क्योंकि इसकी "ढहने योग्य" संपत्ति को गलत पर सेट किया जा रहा है। मैंने अपने इंटरफेस के लिए एक और "प्राकृतिक" अनुभव प्राप्त करने के लिए इसके साथ थोड़ा और खेला।
/* Make sure the accordion can never be completely collapsed */
accordeon.expandedPaneProperty().addListener((ObservableValue<? extends TitledPane> observable, TitledPane oldPane, TitledPane newPane) -> {
Boolean expand = true; // This value will change to false if there's (at least) one pane that is in "expanded" state, so we don't have to expand anything manually
for(TitledPane pane: accordeon.getPanes()) {
if(pane.isExpanded()) {
expand = false;
}
}
/* Here we already know whether we need to expand the old pane again */
if((expand == true) && (oldPane != null)) {
Platform.runLater(() -> {
accordeon.setExpandedPane(oldPane);
});
}
});
स्रोत
2015-12-07 07:00:21
अब के लिए यह [# RT-28141] (http://javafx-jira.kenai.com/browse/RT-28141) – drzymala