您好我正在尝试让调用者函数选择绘图的颜色但是失败。
Car car = new Car(400, 300, 15, Color.red)
这是我的车对象
public class Car{
private Color color;
public Star(double x, double y, double radius, Color color) {
// We can call other methods inside the constructor
setStarCoordinates(x, y, radius);
this.color = color;
}
public void draw(Graphics2D graphics){
graphics.drawPolyline(xCoordOfStar, yCoordOfStar, 11);
graphics.fillPolygon(xCoordOfStar, yCoordOfStar, 11);
graphics.setColor(color);
}
}
修改。代码编译正确但不会改变颜色 PS。我没有在汽车对象中包含一些方法。
答案 0 :(得分:0)
在您完成绘制对象后,您正在设置color
上下文的Graphics
...
您执行操作的顺序非常重要,例如
graphics.setColor(color);
graphics.drawPolyline(xCoordOfStar, yCoordOfStar, 11);
graphics.fillPolygon(xCoordOfStar, yCoordOfStar, 11);
应设置颜色,然后使用该颜色绘制形状