【发布时间】:2016-07-06 03:03:03
【问题描述】:
我正在尝试使用交替颜色制作靶心,但每次运行此代码时,我都会得到一种统一的颜色。我尝试在 for 循环结束时使用 repaint(),但没有帮助。
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Unit5Activity1 extends JPanel{
public void paintComponent(Graphics g){
super.paintComponent(g);
Color color1 = new Color(100, 199, 100);
Color color2 = new Color(208, 180, 45);
for(int i = 5; i > 0; i--){
if(i == 1 || i == 3 || i == 5) {
g.setColor(color1);
g.fillOval(250 + i*25, 250 + i*25, 250 - 50*i, 250 - 50*i);
}
else if(i == 2 || i == 4){
g.setColor(color2);
g.fillOval(250 + i*25, 250 + i*25, 250 - 50*i, 250 - 50*i);
}
}
}
public static void main(String[] args){
Unit5Activity1 panel = new Unit5Activity1();
JFrame application = new JFrame();
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
application.add(panel);
application.setSize(500, 500);
application.setVisible(true);
}//main
}//class
【问题讨论】: