Mega Code Archive

 
Categories / Java / 2D Graphics GUI
 

Implement the Icon interface

import java.awt.Color; import java.awt.Component; import java.awt.Graphics; import javax.swing.Icon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class IconInterfaceDemo extends JPanel {   public IconInterfaceDemo() {   }   public static void main(String[] a) {     JFrame mainFrame = new JFrame();     JLabel label = new JLabel("label");     label.setIcon(new ColoredSquare(Color.green));     label.setDisabledIcon(new ColoredSquare(Color.red));     mainFrame.getContentPane().add(label);     mainFrame.setSize(100, 100);     mainFrame.setVisible(true);   } } class ColoredSquare implements Icon {   Color color;   public ColoredSquare(Color color) {     this.color = color;   }   public void paintIcon(Component c, Graphics g, int x, int y) {     Color oldColor = g.getColor();     g.setColor(color);     g.fill3DRect(x, y, getIconWidth(), getIconHeight(), true);     g.setColor(oldColor);   }   public int getIconWidth() {     return 12;   }   public int getIconHeight() {     return 12;   } }