Witajcie,
Tworzę GUI do aplikacji, gdzie mam:
menuOptionsForegroundBlue = new JMenuItem("Blue", new CircleIcon(Color.BLUE));
Klasa circleIcon, która implementuje interfejs Icon:
private int width = 12;
private int height = 12;
private Color color;
public CircleIcon(Color c){
color = c;
}
@Override
public void paintIcon(Component c, Graphics g, int x, int y) {
Graphics2D g2 = (Graphics2D) g;
Ellipse2D.Double circle = new Ellipse2D.Double(6, 4, width -1, height -1);
g2.setColor(color);
g2.fill(circle);
}
@Override
public int getIconWidth() {
return width;
}
@Override
public int getIconHeight() {
return height;
}
W tym momencie, kiedy ustawiam kolor w CircleIcon na BLUE, w menu koloruje się ikona, ale też tekst w JMenuItem.
Co mogę zrobić, aby kolorowała się tylko ikona, a tekst JMenuItem był czarny?
Pozdrawiam.