Gostaria de saber o porque minha tela não abre…
já coloquei setVisible e nada.
Segue código em anexo para vcs verem
Gostaria de saber o porque minha tela não abre…
já coloquei setVisible e nada.
Segue código em anexo para vcs verem
Acho que faltou o mdi antes de theDesktop
public void actionPerformed( ActionEvent evt )
{
if (evt.getSource() == mnuiEscritorio)
{
//JOptionPane.showMessageDialog(null, "Clicou");
Escritorio tEscritorio = new Escritorio();
mdi.theDesktop.add(tEscritorio);
tEscritorio.setVisible(true);
}
Não deu certo a dica do post anterior.
Aparece esse erro:
Exception in thread "main" java.lang.ClassCastException: java.awt.FlowLayout cannot be cast to java.awt.GridBagLayout
at Telas.Escritorio.Adiciona(Escritorio.java:80)
at Telas.Escritorio.<init>(Escritorio.java:48)
at Telas.MDI$1.<init>(MDI.java:71)
at Telas.MDI.<init>(MDI.java:69)
at Telas.MDI.main(MDI.java:96)
Duas coisas:
1 - Para poder acessar a variável mnuiEscritorio dentro do listener, declare-a como final.
2 - O ClassCastException ocorre pois seu método para adicionar componentes na classe Escritorio realiza esse cast. Para funcionar, mude o leiaute do seu painél para GridBagLayout, adicionando a seguinte linha logo após instanciá-lo:
pPanel.setLayout(new GridBagLayout());
Então, deu certo!!! O erro não aparece mais, agora o problema é que o JInternalFrame não aparece, eu já coloquei setVisible(true); e this.show() mas, nada da telinha aparecer…
Segue em anexo o código atualizado…Será que um dia eu aprendo java direito!!!
O método show() está deprecated. Não use-o (nem em caso de desespero ). Fiz algumas modificações (não me pergunte o que, apenas joguei na IDE e fui mexendo numa coisa ou outra) e aqui funcionou perfeitamente. Lembrando: qualquer dúvida, PERGUNTE!
Veja:
Aqui no meu eclipse nem a pau ele funciona. Não sei porque…
A noite tento em outro micro…
Vlw pela ajuda
Talvez seja por causa do pacote em que está (eu acho que mudei). Tente escrever o pacote certo no código fonte.
O problema do pacote não é porque tb já havia verificado isso.
Sinceramente, estou quase desistindo…
Não consegui fazer a tela aparecer…se desta vez não der certo eu desisto…
Segue última versão do meu código