ComboBox em JInternalFrame

11 respostas
javaJoni

Olá, apesar de sempre pesquisar neste fórum, agora gostaria muito se alguém pudesse me ajudar:
Tenho um JInternalFrame e nele preciso colocar um JComboBox. Mas ele não abre, ou melhor, abre por trás do IFrame(vejo isso se coloca-lo bem na borda de baixo). Já tentei colocá-lo em vários tipos de Painéis, mas sem sucesso.
Se alguém puder me auxiliar eu agradeço.

11 Respostas

criador

Opa…
Seu combo já está inserido no container mas não aparece ou ele nem chega a ser adicionado no container da InternalFrame ?

javaJoni

Ele está no container, inclusive ele aparece, mas quando clico nele ele abre por trás do IFrame.

criador

Já tentasse dar um repaint no container?

javaJoni

Desculpem a minha ignorância(sou estudante ainda), mas o que o repaint() faria em meu componente?

javaJoni

OK, dei um repaint() mas nada aconteceu…

davidbuzatto

O combo está inserido do iframe e está aparecendo atrás?
repaint não resolve nada, só se vc estiver desenhando algo na mão e precisa atualizar o desenho explicitamente. Caso contrário a engine já faz isso p/ vc.

javaJoni

Ok, estou utilizando o NetBeans p desenhar o IFrame, será que existe algum layout ou set p/ q o comboBox abra por trás do container?

javaJoni

Eu preciso que ele abra normalmente na parte da frente do container.

javaJoni

:arrow: E aí pessoal, por favor alguém já teve esse problema?
É urgente!!! :-o

javaJoni
Pessoal, deixa eu explicar melhor:

no Frame principal eu tenho um label do tamanho da janela com meu logtipo.

Então para poder visualisar os InternalFrames eu coloquei o JDesktopPanel no GlassPane.

Com isso a imagem fica no fundo e os internalFrames na frente, porém dessa maneira os comboBoxs nao abrem na frente, abrem por trás deles(IFrames).

segue o código:

initComponents();

ImageIcon icone = new ImageIcon("/imagens/Icone.png");

setIconImage(icone.getImage());

desktopPane = new JDesktopPane();

desktopPane.setOpaque(false);
setGlassPane(desktopPane);
    getGlassPane().setVisible(true);
    setLocationRelativeTo(null);
    setResizable(false);
    setVisible(true);
a chamada:

JanCadProduto janProd=new JanCadProduto();

try {

janProd.setName(“cadastroProduto”);

if (!isInternalFrameOpen(janProd)) {

desktopPane.add(janProd);

janProd.setSelected(true);

}

} catch (PropertyVetoException ex) {

forma.mensagemErro(“Erro.\n”+ex.getMessage(),“OrdeMaxx”);

}

Obrigado.

javaJoni

:oops: 8) Putz gurizada, desculpa aí.
Tava na minha cara. Coloquei o JLabel no DesktopPane e a imagem no JLabel, aí funcionou. Por algum motivo o GlassPane não deixava o comboBox abrir na frente do IFrame. Agora tá td certo.
Té mais gurizada.

Criado 9 de janeiro de 2009
Ultima resposta 19 de jan. de 2009
Respostas 11
Participantes 3