Es gibt natürlich die beiden Methoden getWidth
und getHeight
, aber sie geben die alte Etikettengröße zurück, wenn wir nur den Label
Textwert geändert haben.Wie kann ich die Breite und Höhe eines JavaFX-Labels erhalten?
Zum Beispiel in diesem Code wird der Hintergrund nicht richtig die Größe neu bestimmt:
Label speedLabel = new Label();
Rectangle backgroundLabel = new Rectangle();
// Some initialization
// Change the label text
speedLabel.setText(connection.getSpeed_bps()); // Sets a bigger number
// Adjust the background
backgroundLabel.setWidth(speedLabel.getWidth());
backgroundLabel.setHeight(speedLabel.getHeight());
Nach der Initialisierung meines Label
wie das ist:
Und nach der Textänderung und die Hintergrundeinstellung, meine Label
ist so:
hatte ich einen Blick auf dieses Thema, aber es empfiehlt eine veraltete Methode:
How to get label.getWidth() in javafx
Sie konnten die Bindung ** backgroundLabel Breite und Höhe ** zum ** speedLabel Breite und Höhe ** z.B – SSchuette
Mögliches Duplikat von [Wie berechnet man die Pixelbreite eines Strings in JavaFX?] (Http://stackoverflow.com/questions/13015698/how-to-cal-the-pixel-width-of-a-string-in) -javafx) (Auch [Holen Sie die Höhe eines Knotens in JavaFX (generieren Sie einen Layout-Durchlauf)] (http://stackoverflow.com/questions/26152642/get-the-height-of-a-node-in-javafx- generate-a-layout-pass)) – fabian