Java:等待鼠标输入(点击)
问题描述:
我在JFrame中制作某种基于回合的战斗系统,玩家在轮到他时点击一个按钮。问题是:程序如何等待鼠标单击按钮?它是这样的:Java:等待鼠标输入(点击)
,而它是玩家的回合{
等待鼠标输入
-
如果输入==攻击(例如)
-> attack
否则,如果input == item
-> use item
等
答
您不必等待点击;你让Swing为你做。相反,你把你想做的任何事情放入一个ActionListener
并将它附加到按钮上,以便在单击该按钮时执行它。
至于轮到你,你只需要一个成员变量的地方,保持跟踪它的轮到它;按钮处理程序然后必须查看该变量才能知道该怎么做。构建东西
的一个好方法,顺便说一下,可能是有一个Player
类和Game
类,并在Game
成员称为currentPlayer
。然后ActionListener
(它将Game
对象保留为其自己的成员变量)可以在Game
中查看currentPlayer
,并简单地在适当的Player
对象上调用makeMove()
。
+0
好吧,我会想到另一种解决方案。谢谢! – Zik 2012-04-06 05:45:40
你的问题是什么? – 2012-04-06 05:33:35
我已经把它放在while循环中,但框架的内容不显示我认为这是因为while循环 – Zik 2012-04-06 05:37:13
是什么?我的问题是程序如何等待鼠标点击按钮? – Zik 2012-04-06 05:37:31