我有一个JPanel,我希望在其上有几个线程绘制“动画”。 “动画”由一个带有ImageIcon的JLabel组成,它正从屏幕的一个区域移动到另一个区域。
现在,问题是 - 我希望通过提到的那些线程在屏幕上描绘几个这样的动画。问题是 - JPanel的“paint()”方法一次只能由一个线程触发 - 导致动画以串行方式执行,而不是以并行方式执行。
知道如何在屏幕上同时拥有多个这样的动画?
答案 0 :(得分:4)
无法使用多个线程来执行您想要的操作。 Swing Toolkit是单线程的 。正确的方法是使用其中一个动画框架:
答案 1 :(得分:2)
Swing不是线程安全的,因此它不是一个支持的用例来同时从几个线程做与UI相关的东西。
转到模型 - 视图 - 控制器(MVC)模式: