"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como trocar dinamicamente os painéis dentro de um jframe?

Como trocar dinamicamente os painéis dentro de um jframe?

Postado em 2025-02-06
Navegar:207

How to Dynamically Swap Panels Within a JFrame?

trocando dinamicamente os painéis em um jframe

neste aplicativo Java Swing, um jpanel dentro de um jframe precisa ser trocado por outro jpanel com base em ações do usuário. Explorando a abordagem apropriada para conseguir isso, o código abaixo foi testado:

panel = new CustomJPanelWithComponentsOnIt();
parentFrameJPanelBelongsTo.pack();

no entanto, essa abordagem falha em alternar os painéis. reside na utilização do Cardlayout, um gerente de layout que permite a exibição de vários painéis enquanto exibe seletivamente apenas um painel em um determinado momento. &&&]

Crie um objeto CardLayout:

cardLayout cardLayout = new CardLayout ();

Defina o layout do contêiner que manterá os painéis (por exemplo,, por exemplo, o jframe):

parentframejpanelbelelongsto.setLayout (cardLayout);
  1. Adicione os painéis ao contêiner usando as restrições do cardlayout:
    CardLayout cardLayout = new CardLayout();
    ao parentfamejpanel novo customJPanelWithComponEntSOnit (), "Painel1"); ParentFrameJPanelbelongsto.add (new OtherJpanel (), "Panel2");
  2. Defina o painel inicial a ser exibido:
    CardLayout cardLayout = new CardLayout();
    cardlayout.show (parentframejpanelongstongongsto, "1 "1 "1) ;
Declaração de lançamento Este artigo é reproduzido em: 1729754099 Se houver alguma violação, entre em contato com [email protected] para excluí -lo.
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3