Video: JavaFX 09 How to make use of Accordion and TitledPane 2024
Een accordeon in JavaFX is een stapel met titelvakken. Slechts een van de titelvensters in de accordeon kan op elk willekeurig moment worden geopend. Dus als een van de titelvensters in de accordeon open is en je opent een andere, sluit degene die open was automatisch.
Deze afbeelding toont een harmonika-deelvenster met drie titelvensters; hetzelfde accordeonvenster wordt driemaal in de figuur getoond, telkens met een andere van de titelvensters die zijn geopend.
Als u een accordeonbediening wilt maken, maakt u eerst de afzonderlijke deelvensters met de naam die de accordeon vormen. Vervolgens maakt u de accordeon met behulp van de standaardconstructor en voegt u de titelvensters toe met behulp van de getPanes (). addAll methode. In het volgende codevoorbeeld ziet u hoe u de accordeon maakt die wordt weergegeven in de afbeelding:
// Creëer het groottetableau RadioButton rbSmall = nieuwe RadioButton ("Small"); RadioButton rbMedium = nieuwe RadioButton ("Medium"); RadioButton rbLarge = nieuwe RadioButton ("Large"); ToggleGroup sizeGroup = new ToggleGroup (); sizeGroup. getToggles (). addAll (rbSmall, rbMedium, rbLarge); rbMedium. setSelected (true); VBox sizeBox = nieuwe VBox (10); sizeBox. setPadding (nieuwe Insets (10)); sizeBox. getChildren (). addAll (rbSmall, rbMedium, rbLarge); TitledPane sizeTpane = new TitledPane ("Size", sizeBox); // Maak het stijlschakelvenster RadioButton rbThin = nieuwe RadioButton ("Thin crust"); RadioButton rbThick = nieuwe RadioButton ("Dikke korst"); ToggleGroup styleGroup = nieuwe ToggleGroup (); styleGroup. getToggles (). addAll (rbThin, rbThick); rbThin. setSelected (true); VBox styleBox = nieuwe VBox (10); Stylebox. setPadding (nieuwe Insets (10)); Stylebox. getChildren (). addAll (rbThin, rbThick); TitledPane styleTpane = new TitledPane ("Style", styleBox); // Creëer het bovenste deel van het schakelpaneel CheckBox cbPepperoni = nieuwe CheckBox ("Pepperoni"); CheckBox cbSausage = nieuwe CheckBox ("Worst"); CheckBox cbOlives = nieuwe CheckBox ("Olijven"); CheckBox cbMushrooms = nieuwe CheckBox ("Mushrooms"); CheckBox cbAnchovies = nieuwe CheckBox ("Ansjovis"); VBox toppingsBox = nieuwe VBox (10); toppingsBox. setPadding (nieuwe Insets (10)); toppingsBox. getChildren (). addAll (cbPepperoni, cbSausage, cbOlives, cbMushrooms, cbAnchovies); TitledPane toppingsTpane = new TitledPane ("Toppings", toppingsBox); // Maak de accordeonknop Accordeon acc = nieuwe accordeon (); acc. getPanes (). addAll (sizeTpane, styleTpane, toppingsTpane);