JavaFX: Problem beim Einstellen desselben Knotens auf mehrere Registerkarten

Ich versuche, einen bestimmten Knoten auf mehrere Registerkarten in einem Registerkartenbereich festzulegen. Das Problem ist, dass nur die letzte Registerkarte den Knoten hat, wenn die Anwendung gestartet wird, die restlichen Registerkarten jedoch leer angezeigt werden.

Ich füge den Code und ein paar Screenshots hinzu, um das Problem zu erklären:

import javafx.application.Application;
import javafx.geometry.Pos;
import javafx.geometry.Side;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.Tab;
import javafx.scene.control.TabPane;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox;
import javafx.scene.paint.Color;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class TabExample extends Application
{

public static void main(String[] args)
{
    Application.launch(args);
}

@Override
public void start(Stage primaryStage)
{
    primaryStage.setTitle("Tabs");
    Group root = new Group();
    Scene scene = new Scene(root, 400, 250, Color.WHITE);

    TabPane tabPane = new TabPane();

    BorderPane borderPane = new BorderPane();

    Text myText = new Text("Hello");

    for (int i = 0; i < 5; i++)
    {
        Tab tab = new Tab();
        tab.setText("Tab"
            + i);
        HBox hbox = new HBox();
        hbox.getChildren().add(new Label("Tab"
            + i));
        hbox.setAlignment(Pos.CENTER);
        tab.setContent(myText);
        tab.setClosable(false);
        tabPane.getTabs().add(tab);
    }
    tabPane.setSide(Side.BOTTOM);

    // bind to take available space
    borderPane.prefHeightProperty().bind(scene.heightProperty());
    borderPane.prefWidthProperty().bind(scene.widthProperty());

    borderPane.setCenter(tabPane);
    root.getChildren().add(borderPane);
    primaryStage.setScene(scene);
    primaryStage.show();
}
}

Bitte lassen Sie mich wissen, ob irgendetwas mit meiner Arbeit nicht stimmt oder ob es sich um einen bekannten Fehler handelt.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage