Border
s ne participent pas directement à l'évaluation de la taille du LayoutManager
(ils ne sont pas eux-mêmes JComponent
mais juste les décorations autour d'un JComponent
). Par conséquent, la seule façon de s'assurer que le titre d'un TitledBorder
est complètement visible est de prévoir une taille minimale pour le panneau auquel il est affecté (ou plutôt pour les composants incorporés dans ce panneau).
Calcul de la taille minimum devrait dans ce cas être fondée sur le titre actuel de votre TitledBorder
et le Font
utilisé par TitledBorder
pour peindre son titre.
Pour être honnête, je ne suis pas sûr, tout ce travail vaut la peine d'écrire. Basé sur les composants exacts trouvés dans votre TitledBorder
, une solution plus simple serait d'utiliser JTextField.setColumns(n)
où n est assez grand par rapport au titre.
En fait, une meilleure façon serait d'éviter TitledBorder
tout à fait, comme suggéré par Karsten Lentszch de la renommée JGoodies, et le remplacer par un couleur JLabel
et un JSeparator
horizontal, qui participeraient pleinement à la mise en page et donc d'être utilisés pour la taille calcul.
Êtes-vous fixer de Insets? – u449355