我目前正在为学校制作一款java扫雷游戏,遇到了一个问题。我已经创建了一个以网格布局排列的64个按钮数组。我遇到的问题是获取特定按钮的x和y坐标,并将这些坐标发送到包含2d数组的另一个类。关于如何获得按下按钮的x和y位置,有什么建议吗?在这件事上的任何帮助都将不胜感激。
谢谢
发布于 2010-09-23 16:48:39
一旦你知道了点击的位置,你就可以使用基本的数学来得到正方形的命中率。然后,它是面向对象的编程,将这些信息提供给游戏的其他部分。您可以遵循MVC (模型、视图、控制器)模式。
基本上,您的控制器(主要部分)将注册为侦听您的视图(您的按钮)。
Here is a similar game with source code included,如果有帮助的话。
发布于 2010-09-23 16:50:53
您需要画布上的x-y坐标,还是只需要按钮所在的列/行中的x和y坐标?
如果是后者,只需确保另一个类可以侦听事件,并使用坐标激发一个事件。
class OtherClass {
public void fireEvent(MineSweepButton button);
}对于你的按钮:
class MineSweepButton extends JButton {
private int x;
private int y;
public MineSweepButton(String text, int x, int y) {
super(text);
this.x = x;
this.y = y;
}
}现在添加一个在OtherClass上触发事件的操作侦听器。
https://stackoverflow.com/questions/3776642
复制相似问题