Maison >Java >javaDidacticiel >Comment remplacer dynamiquement un JPanel dans un JFrame dans Java Swing ?
Comment remplacer dynamiquement un JPanel dans un JFrame
Dans les applications Java Swing, un JFrame est souvent utilisé comme fenêtre principale de l'application, contenant divers composants, dont JPanels. Parfois, vous devrez peut-être remplacer un JPanel par un autre en réponse aux actions de l'utilisateur. Ceci peut être réalisé en utilisant CardLayout.
CardLayout vous permet de définir un conteneur (le JPanel parent dans ce cas) qui peut contenir plusieurs panneaux enfants. En changeant le gestionnaire de mise en page du conteneur en CardLayout, vous pouvez basculer de manière transparente entre les panneaux enfants.
Pour mettre en œuvre cette solution :
Ajoutez ces panneaux au JPanel parent :
JPanel parentPanel = new JPanel(new CardLayout()); parentPanel.add(panel1, "panel1"); parentPanel.add(panel2, "panel2");
Ajoutez le JPanel parent au volet de contenu du JFrame :
JFrame frame = new JFrame(); frame.getContentPane().add(parentPanel);
Maintenant, vous pouvez changer le panneau visible en utilisant la méthode show du CardLayout :
CardLayout cardLayout = (CardLayout) parentPanel.getLayout(); cardLayout.show(parentPanel, "panel2");
Cette approche vous permet de remplacer dynamiquement les panneaux dans un JFrame , vous donnant la possibilité de modifier l'interface utilisateur de l'application à la volée.
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!