我创建了循环,它会定期重绘组件:
public class A extends Thread {
private Component component;
private float scaleFactors[];
private RescaleOp op;
public A (Component component){
this.component = component;
}
public void run(){
float i = 0.05f;
while (true) {
scaleFactors = new float[]{1f, 1f, 1f, i};
op = new RescaleOp(scaleFactors, offsets, null);
try {
Thread.sleep(timeout);
} catch (InterruptedException ex) {
//Logger.getLogger(...)
}
component.repaint();
i += step;
}
}
}
但在这种情况下,我收到消息(NetBeans 7.3.1):
Thread.sleep 在循环中调用
在这种情况下也许有更好的解决方案?