在多线程游戏中处理鼠标输入

时间:2014-02-06 22:32:16

标签: java multithreading swing mouseevent

首先,我为这个问题的愚蠢而道歉,我试图解释一切必要但不留下任何重要的东西或给予任何额外的东西,但我可能没有做得最好。我会发布代码,但有太多的东西可以发布。

我正在使用Java开发游戏,不使用外部库。我有一个主类也可以处理我的Jframe。它设置了一切,如大小,标题等,然后启动一个新的线程,处理其他一切不是基本设置。这是一个循环,一直运行到游戏结束。它基本上由更新,然后渲染组成。这些方法在状态管理类中调用相应的方法,该类包含我为所有GUI扩展的自定义GUI类的实例。我把它声明为GUI而不是GUI的子类之一,这样每当我需要切换GUI时,我就可以简单地交换一个新的GUI。所以程序的基本流程是线程update() - >州经理的更新() - > GUI的更新(),然后渲染相同的东西。所以我的问题是,因为我在我的线程之外声明了Jframe,将鼠标输入传递给线程的最佳方法是什么?如果只有一个对象我可以抓取并发送到GUI,它应该很简单。但是由于每个帧之间可能有多个来自MouseAdapter的MouseEvent,我似乎无法理解如何做到这一点。我想出的最好的想法是创建一个MouseEvents数组,然后在update方法中迭代它。但是,出于某种原因,Eclipse一直给我错误。我试图制作阵列,所以我在大约一分钟后放弃了。

0 个答案:

没有答案