1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| private int borderMinimumWidth() {
// Si on a un TitledBorder :
if (getBorder() instanceof TitledBorder) {
TitledBorder titledBorder = (TitledBorder) getBorder();
// On récupère la police et le texte de la bordure :
Font font = titledBorder.getTitleFont();
String title = titledBorder.getTitle();
// On récupère le FontRenderContext associé au composant
FontRenderContext context = getFontMetrics(font).getFontRenderContext();
// On calcule la taille de la chaine selon ce contexte
Rectangle2D rect = font.getStringBounds(title, context);
return 16 + (int)rect.getWidth();
}
return 0;
} |
Partager