import javax.swing.*; import java.awt.*; public class Light extends JPanel{ private int state; public Light(){ state = 0; // red setPreferredSize(new Dimension(40,120)); } public void paintComponent(Graphics page){ super.paintComponent(page); page.setColor(Color.black); page.fillRect(0,0,40,120); Color darkGreen = new Color (0,63,0); Color darkRed = new Color (63,0,0); Color darkYellow = new Color (63,63,0); Color top, middle, bottom; if (state == 0){ // red top = Color.red; middle = darkYellow; bottom = darkGreen; } else if (state == 1){ // green top = darkRed; middle = darkYellow; bottom = Color.green; } else{ // state is 2, yellow top = darkRed; middle = Color.yellow; bottom = darkGreen; } // draw top light page.setColor (top); page.fillOval(5,5,30,30); // middle light page.setColor (middle); page.fillOval(5,45,30,30); // bottom light page.setColor (bottom); page.fillOval(5,85,30,30); } public void changeLight(){ state = (state+1)%3; repaint(); } }