O JInternalFrame não aparece completo no JDesktopPane! [RESOLVIDO]

4 respostas
Cavalo_de_Troia

Salve, salve galera,

já pesquisei e não encontrei nada parecido, é o seguinte, criei uma classe telaPrincipal que extends um JFrame e adicionei um JDesktopPane, JMenu e JMenuItem, estou usando o NetBeans, fui na propriedades do JDesktopPane e adicionei uma borda fosca que me permite colocar uma imagem de fundo no JDesktopPane, o problema é que quando chamo a classe telaCliente que é JInternalFrame, ele abre porém só aparece os componentes JTextField, JComboBox o JButton só aparece qdo passo o mouse por cima. Quando eu tiro a borda (onde está a imagem) a tela surge normalmente, porém eu preciso deixar o logotipo no fundo do JDesktopPane.
Enfim, alguém já passou por isso? Tem alguma solução?
Desde já agradeço!

4 Respostas

G

Tente assim…

desktop = new JDesktopPane() {
public void paintComponent (Graphics g){
ImageIcon img = new ImageIcon("imagem.jpg");
g.drawImage(img.getImage(),0,0,null);
super.paintComponent(g);
}};
desktop.setOpaque(false);
this.setContentPane(desktop);
Cavalo_de_Troia

Amigo obrigado pela resposta, agora a tela aparece por completo, só tem um detalhe quando eu tento mover ou clico na barra de titulo dessa janela ela some, e só aparece quando eu abro uma outra janela. Tem solução pra isso?

Estamos evoluindo, rs, + uma vez obrigado pela força!

G

verifique se possui esta linha no seu código:

desktop.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE );

pode ser isto, mas isso é bom (caso seja), pois a tela somente será renderizada novamente quando soltar a tela em sua nova posição.
Poste o seu código que fica mais fácil de ajudar…

T+

Cavalo_de_Troia

Gilson Polito, não tinha essa linha no meu código, adicionei e ficou perfeito, muito obrigado pela ajuda.

Grande abraço!

Criado 8 de outubro de 2009
Ultima resposta 8 de out. de 2009
Respostas 4
Participantes 2