JPanel e JFrame

Para que serve um JPanel? O JFrame e e o JPanel é usado em conjunto?

Você utiliza o JPanel para armazenar componentes gráficos na sua tela (pode ser JFrame, JDialog, JInternalFrame, etc), de acordo com a necessidade.

Você não é obrigado a utilizar o JPanel em uma tela JFrame, eu prefiro utilizar, principalmente por causa do Layout.

Outra coisa, com o JPanel é possível criar componentes genéricos de interface gráfica, como por exemplo um grupo de botões que se repetem muito em várias telas distintas, por exemplo telas de cadastro.

Documentação:

JPanel

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JPanel.html

JFrame

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JFrame.html

Espero ter ajudado!

Abraço!

Vlw cara muito obrigado!!

Estou criando uma aplicação no Netbeans 6.8, meu form principal onde esta o Menu fiz um Jframe, os seguintes Cadastro de Cliente, Fornecedores , Funcionarios, Utilizei o Formulário de amostra mestre\detalhe onde ele cria um JPANEL. Minha dificuldade é a seguinte: Não consigo centralizar o esse form - JPANEL - na tela do meu computador. Quando executo o sistema a Tela principal fica centralizada, mas quando clico em Menu - Cadastro de Cliente ele aparece no canto superior da minha area de trabalho.

Busquei a propriedade do JPANEL para alterar não encontrei. Se alguem souber como faço isso por favor me ajude

[quote=wpellegrini]Estou criando uma aplicação no Netbeans 6.8, meu form principal onde esta o Menu fiz um Jframe, os seguintes Cadastro de Cliente, Fornecedores , Funcionarios, Utilizei o Formulário de amostra mestre\detalhe onde ele cria um JPANEL. Minha dificuldade é a seguinte: Não consigo centralizar o esse form - JPANEL - na tela do meu computador. Quando executo o sistema a Tela principal fica centralizada, mas quando clico em Menu - Cadastro de Cliente ele aparece no canto superior da minha area de trabalho.

Busquei a propriedade do JPANEL para alterar não encontrei. Se alguem souber como faço isso por favor me ajude [/quote]

Já faz tempo que você postou essa dúvida, mas se ainda precisar da resposta, creio que você deve alterar o layout de inicialização do teu painel. use um borderLayout com a opção CENTER.

Acredito que isso deve resolver.

[quote=renanedpedroso]Você utiliza o JPanel para armazenar componentes gráficos na sua tela (pode ser JFrame, JDialog, JInternalFrame, etc), de acordo com a necessidade.

Você não é obrigado a utilizar o JPanel em uma tela JFrame, eu prefiro utilizar, principalmente por causa do Layout.

Outra coisa, com o JPanel é possível criar componentes genéricos de interface gráfica, como por exemplo um grupo de botões que se repetem muito em várias telas distintas, por exemplo telas de cadastro.[/quote]

Esse seu comentário toca numa dúvida grande que acabei por ter hoje: Para que serve, no netbeans, o Formulário JPanel ???

Explico: Criei vários, de forma visual, com a idéia de que criaria um único JFrame e colocaria nele cada um dos JPanels a medida que escolhesse uma opção no menu. Não funcionou de jeito nenhum.

Tentei mudando o código do initcomponentes, tentei via add no Container. Apesar de não dar erro, não apareciam na tela os controles que eu havia posto nos JPanels.

Pesquisei no fórum, alguém disse que só é possível fazer isso via JInternalFrame. Fiz isso, funcionou, mas daí volta a pergunta, pra que existe no netbeans a opção de criar formulários JPanel se eles não podem ser colocados em nada.

Ou podem???

Com internal frames e tabbed panes é mais facil de fazer porque cada panel fica em um container diferente.

Se quiser fazer com que vários panels ocupem a mesma área no container, use CardLayout.