Janela não aparece imagem

2 respostas
F
Quando coloco esse código fonte sem mandar maximizar a janela a imagem no centro da tela não aparece.  Quando coloco a opção de maximizar a janela ai aparece a imagem ou quando maximizo é que a imagem aparece.

Segue abaixo o código:

import javax.swing.<em>;

import java.awt.</em>;
public class Sorveteria extends JFrame {

JLabel imagem;

public Sorveteria(){

super (SORVERTERIA);

setSize(800,600);

setVisible(true);

//		setResizable(false);

//		setLocationRelativeTo(null);

Container tela=getContentPane();
//Insere o ícone no canto superior da tela

// ImageIcon icone=new ImageIcon(“images[3].jpg”);
// setIconImage(icone.getImage());

//Insere o ícone no centro da tela
//	Container tela1 = getContentPane();

ImageIcon icone = new ImageIcon(SorvetePrincipal.jpg);

imagem = new JLabel(icone);

tela.add(imagem);

setExtendedState(MAXIMIZED_BOTH);
//		tela.setBackground(Color.blue);

}

public static void main (String args[]){

Sorveteria app=new Sorveteria();

app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}	

}

Desde já agradeço a atenção de todos.

2 Respostas

BrunoBastosPJ

Não sou nenhum Guru em Swing, mas eu já tive problemas assim e consegui resolver. Pelo que identifiquei o problema é na hora que você chama o setVisible(true) de JFrame. Quando você já está mostrando a janela e você adiciona algum outro componente neste Frame, ele deveria dar um repaint (o que não funcionou no meu caso e não sei se vai funcionar no seu também).

Para solucionar este problema basta você colocar o seu setVisible(true) na útltima linha do seu construtor, mas infelizmente não posso te dar uma resposta 100% correta do porque isso acontece em Swing. Para resolver seu problema basta isso, caso algum Guru de Swing aqui do PJ leia este post por favor desvende este mistério! :grin:

Obs: Procure usar as tags code nos seus códigos. :wink:

F

Obrigado, fiz isso e deu certo…

Criado 16 de junho de 2008
Ultima resposta 16 de jun. de 2008
Respostas 2
Participantes 2