Imagem no plano de fundo

3 respostas
N

Pessoal, estou com dificuldade para colocar uma imagem como background de uma tela do meu programa.
Essa tela era pra ter a imagem no plano de fundo e no centro um panel, com o passwordField para logar, o button e um label.
Só que não consigo adicionar a imagem e também não sei como colocar o panel no centro da tela!
Eu to aprendendo interface ainda, dei uma vasculhada no google e a única coisa
q consegui fazer foi o ImageIcon, mas não consigo adicionar a imagem na janela, se alguem poder me ajudar muito obrigado! :wink:
abraço!

public class TelaLogin implements ActionListener {
	
	private JFrame frame;
	private JLabel label;
	private JPasswordField passwordField;
	private JButton button;
	private JPanel panel;
	
	public TelaLogin() {
		montaTelaLogin();
	}
	
	
	public void montaTelaLogin() {
		frame = new JFrame("Programa");
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		button = new JButton("Entrar");
		button.addActionListener(this);
		
		label = new JLabel("Digite a senha:");
		passwordField = new JPasswordField(10);
		
		
		ImageIcon imageIcon = new ImageIcon("capa.jpg");
                
		
		
		panel = new JPanel();

                //panel.add(imageIcon) NÃO PEGA! :/

		panel.add(label);
		panel.add(passwordField);
		panel.add(button);
		
		
		
		frame.add(panel);
		
		frame.pack();
		frame.setVisible(true);

	}
	
	public void actionPerformed(ActionEvent e) {
		String password = passwordField.getText();	
		if(Funcionario.verifica(password)) {
			JOptionPane.showMessageDialog(frame, "Senha correta!",
					"Logon", 1);
			}
		else {
			JOptionPane.showMessageDialog(frame, "Senha errada!",
					"Logon", 2);
		}
	}
	
	public static void main(String[] args) {
		new TelaLogin();
	}
	
}

3 Respostas

ViniGodoy

Dá uma olhadinha aqui:
http://www.guj.com.br/posts/list/56248.java#295271

N

vc sabe me dizer como eu faço isso sem usar essa classe?
pq eu qria aprender a fazer isso, e eu nao consegui usar a sua classe :confused:
vlww abraço

ViniGodoy

Sim. Você tem que sobrescrever o método paintComponent, carregar a imagem com o ImageIO.read, e então usar o método drawImage do objeto Graphics para desenha-la.

No tópico, deixei os fontes da classe… estude-os.

Criado 1 de maio de 2008
Ultima resposta 5 de mai. de 2008
Respostas 3
Participantes 2