Ich habe an einer Software mit JavaFX gearbeitet und ich habe ein dummes aber besorgniserregendes Problem.
In einem bestimmten Teil des Codes habe ich ein HBox
und darin drei Elemente: ein image
, ein label
und ein VBox
.
Das Problem ist, dass ich das image
auf der linken Seite, also neben dem linken Rand von window
, und das VBox
auf der rechten Seite, also neben, ausrichten lassen möchte die rechte Grenze der window
und ich weiß nicht, wie es geht.
Ich habe versucht, VBox.setAlignment(Pos.RIGHT_CENTER)
zu verwenden, aber es hat nicht funktioniert.
Dies ist das häufigste Ausrichtungsproblem, wenn Sie ein Element in die beiden Ecken des Layouts platzieren möchten.
Nehmen wir an, Sie möchten:
%Vor% I sehr einfache Lösung ist, zwei zusätzliche Regions
zu verwenden. Einer zwischen ImageView & amp; Etikette. Der andere zwischen Label und VBox.
Für diese Regionen muss HGrow
als Priority.Always
festgelegt sein. Wenn Sie also die Größe der HBox ändern, werden diese beiden Elemente vergrößert, wobei die anderen Elemente intakt bleiben Ort.
FXML-Beispiel :
%Vor% Bitte notieren Sie HBox.hgrow="ALWAYS"
in beiden Regionen.
Ausgabe
Ich denke, dass die beste Option von HBox
auf BorderPane
wechseln könnte. Es lässt Sie Gegenstände an jeden Rand Ihres Fensters kleben.
Eine andere Option ist GridPane
. Sie können eine Spalte auswählen und ihre Eigenschaft 'Halgension' in 'RECHTS' ändern.
Und ich empfehle übrigens JavaFX Scene Builder während Spaß mit JavaFX.