Olá,fiz este programa simples,um interruptor eletrônico ,uma única coisa de diferente que eu fiz foi o modo do tratamento do JButton,achei o jeito que tratei ele um pouco peculiar.Queria saber a sugestão de vocês,se isto poderia interferir muito no meu aprendizado,irei colocar as imagens das lampadas aqui também,aí é só copiar a classe que eu fiz e colocar as imagens no mesmo projeto
import java.awt.Color;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Lamp extends JFrame{
JLabel images;
JButton ligar = new JButton(“Ligar Lampada”);
JButton ligar2 = new JButton(“Desligar Lampada”);
ImageIcon lamp = new ImageIcon(getClass().getResource(“lampada1.jpg”));
ImageIcon lamp2 = new ImageIcon(getClass().getResource(“lampada2.jpg”));
Lamp(){
Container a = getContentPane();
a.setBackground(Color.WHITE); //coloquei a cor branca para encaixar com a cor da imagem
generate();
setSize(500,500);
setVisible(true);
images = new JLabel(lamp);
images.setBounds(170,70,169,220);
add(images);
ligar.setBounds(160,300,190,40);
ligar2.setBounds(160,300,190,40);
add(ligar);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setLocationRelativeTo(null);
setLayout(null);
}
public void generate() {
ligar.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
ligar.setBounds(800,800,0,0); //local fora da espaço do jframe,oque faz com que ele suma da perspectiva
ligar2.setBounds(160,300,190,40); //coloquei 2 vezes o setbounds pois se só tivesse 1 e o usuário clicasse no JButton ele iria sumir,pois iriamos manda-lo para fora de perspectiva e não voltaríamos com ele para o lugar inicial
add(ligar2);
images.setIcon(lamp2); //setando a imagem como a lampada ligada
}
});
ligar2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
ligar2.setBounds(800,800,0,0); //local fora da espaço do jframe,oque faz com que ele suma da perspectiva ²
ligar.setBounds(160,300,190,40); //local de inicio
add(ligar);
images.setIcon(lamp); //setando a imagem como a lampada desligada
}});
}
public static void main(String[] args) {
new Lamp();
}
}
Imagens :