Моя программа создает Circles
и Squares
и помещает их в центр DrawZone
.Что я хочу сделать, это переместить их в точку, где я щелкаю мышью.Для этой цели я использую MouseListener
.
. Этот шаг достигается, однако, когда я перемещаю формы, я хочу изменить цвет на КРАСНЫЙ, но он не работает.Я не понимаю почему, но мои формы перемещаются в точку мыши, но это меняет цвет следующей формы (мои ArrayList
не меняются).
Вот мой код:
if(SwingUtilities.isLeftMouseButton(arg0)) {
if(ListeForme2D.isEmpty()) {
System.out.println("No way to move something that doesn't exist !");
} else {
ArrayList<Forme2D> updateList = new ArrayList<Forme2D>(ListeForme2D);
initialColor = ListeForme2D.get(0).getColor();
ListeForme2D.clear();
updateList.get(0).setColor(Color.red);
updateList.get(0).setTranslation(arg0.getX(), arg0.getY());
repaint();
for(int i=0; i<updateList.size(); i++) {
ListeForme2D.add(updateList.get(i));
}
repaint();
}
}
Черный перемещается к точке щелчка, но не является красным, как ожидалось, однако второй становится красным.Изображено ниже:
.