Коротышка, у меня есть ArrayList, который хранит несколько объектов для себя. Каждый раз, когда я рисую эти объекты, я также устанавливаю цвет на зеленоватый. Моя проблема в том, что альфа-значение как-то полностью контролируется. Зачем? (Но не фактический цвет, поэтому просто значение альфа не отображается).
Сначала я попытался сделать обычным способом метод setColor. Но это не сработало. Я также написал метод, который позволил мне пройтись по всем объектам. Это тоже не сработало.
Обычный способ сделать это: (не сработало)
private void drawWatchers(Graphics2D g) {
for (int i = 0; i < watcher.size(); i++) {
g.setColor(new Color(46, 139, 87, 150));
g.fillRect(watcher.get(i).getX(), watcher.get(i).getY(), 30, 30);
}
}
Код, который я написал, чтобы убедиться, что я прохожу все объекты
(тоже не работал)
public Color setColor(int r, int g, int b, int a){
return new Color(r, g, b, a);
}
//On the other class:
for (int i = 0; i < watcher.size(); i++) {
g.setColor(watcher.get(i).setColor(46, 139, 87, 150));
g.fillRect(watcher.get(i).getX(), watcher.get(i).getY(), 30, 30);
}