我的程序当前从文本文件中读取,并根据数组中的下一个值绘制不同颜色的圆圈。目前我正在读取数组中的前 10 个值,所以应该有 10 个画圆。这些圆圈都是同时绘制的,但我希望它们一个一个地绘制,例如每个绘制的圆圈之间有两秒的间隔。下面的代码是读取值和绘制圆圈的部分。有人可以帮帮我吗。我对在哪里以及如何添加计时器感到非常困惑。
public void paintComponent(Graphics g) {
drawShapes(g, circlesT);
}
public void drawShapes(Graphics g, ArrayList<Shape> circlesT) {
Graphics2D ga = (Graphics2D) g;
ga.drawImage(newImage, 0, 0, null);
for (int i = 0; i < circlesT.size(); i++) {
ga.draw(circlesT.get(i));
ga.setPaint(Color.white);
ga.fill(circlesT.get(i));
}
for (int i = 0; i < 10; i++) {
if (read.temp.get(i) < 31 && read.temp.get(i) > 30) {
ga.draw(circlesT.get(i));
ga.setPaint(Color.green);
ga.fill(circlesT.get(i));
} else if (read.temp.get(i) < 32 && read.temp.get(i) > 31) {
ga.draw(circlesT.get(i));
ga.setPaint(Color.red);
ga.fill(circlesT.get(i));
} else if (read.temp.get(i) < 33 && read.temp.get(i) > 32) {
ga.draw(circlesT.get(i));
ga.setPaint(Color.yellow);
ga.fill(circlesT.get(i));
}
}
}