JavaFX – Panel zakładek (TabPane) z zamykanymi zakładkami (Tab)
Panel zakładek TabPane
ma interesującą właściwość – możliwość zamykania wybranej
zakładki. Jest ona szczególnie użyteczna na przykład przy nauce do egzaminu, kiedy
możemy kolejno eliminować zakładki, których treść już opanowaliśmy
Klasa TabPaneWithTabsToClosing
Ściągnij klasę TabPaneWithTabsToClosing.zip
package panels; import javafx.application.Application; import javafx.geometry.Side; import javafx.scene.Scene; import javafx.scene.control.Tab; import javafx.scene.control.TabPane; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.layout.StackPane; import javafx.stage.Stage; import java.io.FileInputStream; public class TabPaneWithTabsToClosing extends Application { public static void main(String[] args) { Application.launch(args); } @Override public void init() { } @Override public void start(Stage stage) { try { Image image1 = new Image(new FileInputStream( "rozdzial17c/src/zasoby/grzyb1.jpg")); ImageView iv1 = new ImageView(image1); Tab tab1 = new Tab("1", iv1); Image image2 = new Image(new FileInputStream( "rozdzial17c/src/zasoby/grzyb2.jpg")); ImageView iv2 = new ImageView(image2); Tab tab2 = new Tab("2", iv2); Image image3 = new Image(new FileInputStream( "rozdzial17c/src/zasoby/grzyb3.jpg")); ImageView iv3 = new ImageView(image3); Tab tab3 = new Tab("3", iv3); Image image4 = new Image(new FileInputStream( "rozdzial17c/src/zasoby/grzyb4.jpg")); ImageView iv4 = new ImageView(image4); Tab tab4 = new Tab("4", iv4); Image image5 = new Image(new FileInputStream( "rozdzial17c/src/zasoby/grzyb5.jpg")); ImageView iv5 = new ImageView(image5); Tab tab5 = new Tab("5", iv5); Image image6 = new Image(new FileInputStream( "rozdzial17c/src/zasoby/grzyb6.jpg")); ImageView iv6 = new ImageView(image6); Tab tab6 = new Tab("6", iv6); TabPane tabp = new TabPane(tab1, tab2, tab3, tab4, tab5, tab6); tabp.setTabClosingPolicy(TabPane.TabClosingPolicy.SELECTED_TAB); tabp.setSide(Side.BOTTOM); tabp.setMaxSize(300, 225); StackPane root = new StackPane(tabp); Scene scene = new Scene(root); stage.setScene(scene); stage.show(); } catch (Exception e) { e.printStackTrace(); } } @Override public void stop() { } }
Po uruchomieniu zobaczymy panel zakładek. Wybrana zakładka ma możliwość zamknięcia i eliminacji z przeglądania.