Ellipse2D.Double circle = new Ellipse2D.Double(50, 50, 10, 10);
图标的大小为(10,10)。50,超出了Icon的范围。相对于图标完成绘制,因此椭圆应为:
Ellipse2D.Double circle = new Ellipse2D.Double(0, 0, 10, 10);
使用重绘它将变为绿色,蓝色或红色。
您的ColorChanger类将需要一个
setColor(Colorcolor)方法,以便您可以动态更改要绘制的颜色。然后,paintIcon()方法应使用此颜色。



