Maison >Java >javaDidacticiel >Pourquoi mon Swing JTabbedPane ne met-il pas à jour son apparence après l'ajout d'un nouvel onglet ?

Pourquoi mon Swing JTabbedPane ne met-il pas à jour son apparence après l'ajout d'un nouvel onglet ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-30 06:53:19921parcourir

Why Doesn't My Swing JTabbedPane Update Its Look and Feel After Adding a New Tab?

L'apparence ne se met pas à jour dans Swing JTabbedPane

Vous avez créé une application dans Java Swing qui permet aux utilisateurs de modifier l'apparence à partir d'un menu. Cependant, après l'ajout d'un nouvel onglet dans JTabbedPane, les changements d'apparence ne sont pas reflétés dans le nouvel onglet.

Solution

Pour résoudre ce problème, combinez le approches suggérées par @Andrew et une solution classique de swingjs.org :

Window windows[] = Frame.getWindows();
for (Window window : windows) {
    SwingUtilities.updateComponentTreeUI(window);
    window.invalidate();
    window.validate();
    window.repaint();
}

Ce code met à jour l'apparence, invalide et valide les fenêtres, et les repeint pour assurer un bon rendu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn