Hallo,
ich habe ein TabPane in der habe ich ein Tab mit einer HBox die wiederum ein Chart und ein Label beinhaltet.
Ich möchte, das sich die Weite des Charts an die Tab Größe anpasst und das Label nur die benötigte Weite hat.
Dazu wollte ich die Weiten aneinander Binden, jedoch wird dann das Label zu kurz dargestellt.
Hier die wichtige Codezeile:
Hier der ganze Code:
Wie kann ich das width-binding richtig machen damit das Label nicht abgeschnitten wird?
Edit:
Jetzt bin ich gerade draufgekommen, sobald die Größe des Fenster geändert wird, wird auch das Label vollständig angezeigt.
Ist es möglich, dass die Größe gleich von Anfang an richtig dargestellt wird?
godi
ich habe ein TabPane in der habe ich ein Tab mit einer HBox die wiederum ein Chart und ein Label beinhaltet.
Ich möchte, das sich die Weite des Charts an die Tab Größe anpasst und das Label nur die benötigte Weite hat.
Dazu wollte ich die Weiten aneinander Binden, jedoch wird dann das Label zu kurz dargestellt.
Hier die wichtige Codezeile:
Java:
chart.prefWidthProperty().bind(tabPane.widthProperty().subtract(label.widthProperty()));
Hier der ganze Code:
Java:
public class TabPanePrefSize extends Application {
@Override
public void start(Stage primaryStage) {
try {
// Inhalt erstellen: Chart und Label
LineChart<Number, Number> chart = new LineChart<>(new NumberAxis(), new NumberAxis());
Label label = new Label("Test Text!");
HBox box = new HBox(chart, label);
// Tab erstellen
Tab tab = new Tab("Test Pref. Size");
tab.setContent(box);
TabPane tabPane = new TabPane(tab);
// ++++++ Größe des Inhaltes an die Größe des Tab's binden +++++++
chart.prefWidthProperty().bind(tabPane.widthProperty().subtract(label.widthProperty()));
// Scene erstellen und GUI anzeigen
Scene scene = new Scene(tabPane,1000,700);
primaryStage.setScene(scene);
primaryStage.show();
} catch(Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
launch(args);
}
Wie kann ich das width-binding richtig machen damit das Label nicht abgeschnitten wird?
Edit:
Jetzt bin ich gerade draufgekommen, sobald die Größe des Fenster geändert wird, wird auch das Label vollständig angezeigt.
Ist es möglich, dass die Größe gleich von Anfang an richtig dargestellt wird?
godi