Text in der Mitte von Komponenten platzieren: Unterschied zwischen den Versionen
Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springenK |
(→Buttons selbst zeichnen) |
||
Zeile 8: | Zeile 8: | ||
<code=java> | <code=java> | ||
xPosOfText = ((button.getWidth() - font.getWidth(text)) / 2); | 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> | </code=java> | ||
Version vom 30. August 2013, 15:03 Uhr
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>
</html>");
</code=java>