Dans cette application swing java, un jpanel dans un jframe doit être échangé avec un autre jpanel basé sur les actions utilisateur. Exploration de l'approche appropriée pour y parvenir, le code ci-dessous a été testé:
panel = new CustomJPanelWithComponentsOnIt(); parentFrameJPanelBelongsTo.pack();
Cependant, cette approche ne parvient pas à changer les panneaux. réside dans l'utilisation de CardLayout, un gestionnaire de mise en page qui permet l'affichage de plusieurs panneaux tout en affichant sélectivement un seul panneau à un moment donné.
pour implémenter CardLayout, les étapes suivantes peuvent être prises:
Créez un objet CardLayOut:
cardLayout CardLayout = new CardLayout ();
Définissez la mise en page du conteneur qui maintiendra les panneaux (par exemple, le jframe):
CardLayout cardLayout = new CardLayout();
Ajoutez les panneaux au conteneur à l'aide des contraintes de CardLayout:
parentFrameJPanelBelongsTo.setLayout(cardLayout);
définissez le panneau initial à afficher:
parentFrameJPanelBelongsTo.add(new CustomJPanelWithComponentsOnIt(), "panel1"); parentFrameJPanelBelongsTo.add(new AnotherJPanel(), "panel2");
Modifiez dynamiquement le panneau actif basé sur l'interaction utilisateur:
cardLayout.show(parentFrameJPanelBelongsTo, "panel1");
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3