Text in der Mitte von Komponenten platzieren

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen

JButtons stellen Text standardmäßig mittig an.

Bei selbsterzeugten "Buttons", sei es durch Zeichnen in der paintComponent()-Methode oder Verwenung eines JLabels ist das aber nicht der Fall.

Buttons selbst zeichnen

Ihr braucht einen Font, einen eigens programmierten Button, und natürlich Text, der im ausgewählten Font formtatiert ist.

<code=java> xPosOfText = ((button.getWidth() - font.getWidth(text)) / 2); </code=java>

Um die y-Koordinate zu berechnen muss man das Gleiche machen, nur mit <code=java>.getHeight()</code=java> <code=java> yPosOfText = ((button.getHeight() - font.getHeight()) / 2); </code=java>

Buttons, die ein JLabel als Basis nutzen

Bei dieser Methode kann das bereits im Konstruktor festgelegt werden.

<code=java>

JLabel label = new JLabel("<html>

Mittig ausgerichteter, kursiver Text

</html>");

</code=java>