TabPane&Tab
TabPane tabPane = new TabPane ( ) ;
tabPane. setPrefWidth ( 200 ) ;
tabPane. setPrefHeight ( 200 ) ;
tabPane. setStyle ( "-fx-background-color: #0ac" ) ;
Tab tab1 = new Tab ( "Tab1" ) ;
Tab tab2 = new Tab ( "Tab2" ) ;
Tab tab3 = new Tab ( "Tab3" ) ;
tab1. setGraphic ( new ImageView ( "image\\stash.png" ) ) ;
tab1. setOnClosed ( new EventHandler < Event> ( ) {
@Override
public void handle ( Event event) {
System. out. println ( "tab1.setOnClosed" ) ;
}
} ) ;
tab1. setOnCloseRequest ( new EventHandler < Event> ( ) {
@Override
public void handle ( Event event) {
event. consume ( ) ;
System. out. println ( "tab1.setOnCloseRequest" ) ;
}
} ) ;
tab1. setOnSelectionChanged ( new EventHandler < Event> ( ) {
@Override
public void handle ( Event event) {
System. out. println ( "tab1.setOnSelectionChanged" ) ;
}
} ) ;
tab2. setClosable ( false ) ;
tab1. setContent ( new Label ( "Tab1" ) ) ;
tab2. setContent ( new Label ( "Tab2" ) ) ;
tab3. setContent ( new Label ( "Tab3" ) ) ;
tabPane. getSelectionModel ( ) . select ( tab2) ;
tabPane. setTabClosingPolicy ( TabClosingPolicy. ALL_TABS) ;
tabPane. setSide ( Side. LEFT) ;
tabPane. setRotateGraphic ( true ) ;
tabPane. getTabs ( ) . addAll ( tab1, tab2, tab3) ;
tabPane. getSelectionModel ( ) . selectedIndexProperty ( ) . addListener ( new ChangeListener < Number> ( ) {
@Override
public void changed ( ObservableValue< ? extends Number > observable, Number oldValue, Number newValue) {
System. out. println ( "tabPane.selectedIndexProperty()" ) ;
}
} ) ;
tabPane. getSelectionModel ( ) . selectedItemProperty ( ) . addListener ( new ChangeListener < Tab> ( ) {
@Override
public void changed ( ObservableValue< ? extends Tab > observable, Tab oldValue, Tab newValue) {
System. out. println ( "tabPane.selectedItemProperty()" ) ;
}
} ) ;