私はJavaでプログラムを作成しました(演習目的で)、マウスをスクロールして明るい赤から濃い赤に色を変える必要がある星があります..( MouseWheelListener を使用)およびその逆 すべてが他の種類の星でもうまく機能しますが、これだけが機能しません..皆さんを混乱させる代わりに、いくつかのコードを示します!
レッドスタークラスはこちら
public class StarRed extends Star {
protected int r = 221;
protected Color rood = new Color(r, 0, 0);
public StarRed(int radius, int x, int y) {
super(radius, x, y);
this.color = rood;
System.out.println(r);
}
}
ご覧のとおり、R変数を使用して色を変更しようとしました..
私のコントローラーでこれを行います
@Override
public void mouseWheelMoved(MouseWheelEvent e) {
for(StarRed s: rs) {
s.r += e.getWheelRotation();
}
repaint();
}
しかし、色は変わりません。誰かが私が間違っていることを教えてもらえますか?