クリックするたびに色を変えるようにJButtonを作成したいが、2回目のクリック後に変わらない。 それは私の代わりにRandom()。nextInt(250)で動作するので変です。 何が問題なのでしょうか?クリックして色を徐々に変えるようにJButtonを設定する方法
ここでは、コードです:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Main {
public static void main(String[] args) {
JFrame jf = new JFrame();
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel jp = new JPanel();
jp.setLayout(new BorderLayout(100, 100));
JButton l = new JButton("Hello");
l.setBackground(new Color(245, 12, 53));
jp.add(l, BorderLayout.EAST);
jf.add(jp);
jf.setSize(200, 200);
jf.setLocationRelativeTo(null);
jf.setVisible(true);
l.addActionListener(new ActionListener() {
Integer i = new Integer(0);
Color c = new Color(150, 10, i);
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if (i < 200) {
i += 50;
c = new Color(150, 10, i);
l.setBackground(c);
} else
i = 0;
}
});
}
}
ありがとう、実際に私は変更に気付かなかった、私はフラックスをインストールして不都合に私はブルーコンポーネントを選択しました – JayDP
@JayDPあなたの質問に答えると思うなら、そのチェックマークをクリックして受け入れることを検討してください! – Sweeper
@JayDP、 '本当に私は変更に気づいていませんでした.' - 作成されたColorオブジェクトを表示しましたか?これは基本的なデバッグです。 – camickr