Java Swing - Wie ändern der Schriftgröße auf ein JPanel ist TitledBorder?

Ich muss in der Lage sein, um programmgesteuert ändern Sie die Schriftgröße von allen Komponenten in meinem Swing-app. Ich kann dies nicht in der üblichen Weise (mit UIManager oder putClientProperty) ich bin mit dem Nimbus look and feel, so benutze die folgende Methode, um erhöhen Sie die Schriftgröße der einzelnen Komponenten in meiner app individuell...

private void enlargeFont(java.awt.Component c, float factor) {
    c.setFont(c.getFont().deriveFont(c.getFont().getSize() * factor));
}

Das problem das ich habe ist, dass ich mit einer TitledBorder auf meinem JPanel und (erwartungsgemäß) vorbei mein JPanel in der oben genannten Methode nicht die Größe des JPanel ' s border-Titel.

Also gibt es eine Möglichkeit, ich kann die schriftart ändern, die Größe an der Grenze? (Wenn ich könnte den text von der Grenze konnte ich dann erstellen Sie eine neue TitledBorder (mit einer größeren schriftart) und dann gilt es mit dem JPanel ist setBorder () - Methode... aber es scheint nicht möglich, die Grenze zu text(?).

Hat jemand irgendwelche Vorschläge auf, wie zu lösen?

Sie müssen revalidate und repaint den Container, vermutlich beginnend mit dem root-Bereich. Können Sie einige Beispiel-code

InformationsquelleAutor ban-geoengineering | 2013-03-06

Schreibe einen Kommentar