我正在用java创建一个15益智游戏。我已经创建了一个游戏面板和编写方法,用于查找字段上空位(不是JButton)的位置,以及控制是否为获胜组合的方法(JButton位于正确的位置)。所以,我有这样的事情:
我在编写ActionListener时遇到了麻烦。是否可以编写一个方法来确定应该将actionListener添加到围绕空白空间的JButton中。
我真的需要一些提示或/或者已经编写的方法/解决方案。
谢谢!
答案 0 :(得分:8)
我认为你最好的选择是让动作监听器在所有按钮上保持活动状态。单击时,如果它确定自己不与空框相邻,则它什么都不做。
答案 1 :(得分:6)
我建议放弃只将actionListeners添加到空白空间周围的按钮的想法:将actionListeners添加到所有按钮,只有在有效时才处理。
另外,根据我的经验,只允许点击其中一个围绕空白区域的瓷砖是非常用户的敌意。在示例图片中,您计划仅允许单击7,1和11.您应该允许单击5,7,1,13,14和11.因此,例如单击14应该移动1 ,左边13和14。