对于频繁重绘的应用程序,“模型”应如何通知“视图”他们需要重复重绘其中一个组件。这:
class AppLogic extends Observable {
void runAnimation() {
while (isAnimationRunning) {
modifyDataStructures();
setChanged();
notifyObservers();
Thread.sleep(25);
}
}
}
class View extends JComponent implements Observer {
void update(Observable o) {
o.getData();
innerPanel.repaint();
}
}
对面板进行动画处理似乎是一种糟糕的方式,尤其是在程序运行的大部分时间都在重新绘制动画的情况下。有什么建议么?谢谢。
*忽略线程等明显错误