嘿我正在开展一个小项目,目的是加速我的学习并遇到问题,我有一个类实例的arraylist,每个都有x和y位置,每个都被映射到适合窗口内,我想知道如何实现功能,允许用户点击一个节点(屏幕上的椭圆在映射的x,y值来自类的实例),并且我的程序以某种方式有一个切换显示有关的信息这个节点在屏幕的另一部分,我已经找了代码示例,并没有找到一个我可以使用我的senario这里是我的班级
class Ship{
float yPos;
float xPos;
Ship(String line){
String[] parts = line.split(",");
xPos = float(parts[4]);
yPos = float(parts[5]);
}
}
我从csv文件中获取数据并将其拆分等, 我有很多代码,所以如果我的例子不够,我会在需要时添加特定的部分, 提前致谢 , 亲切的问候, 安德鲁
答案 0 :(得分:0)
您必须添加用于检测鼠标是否在对象内的逻辑。
具体如何执行此操作取决于对象的形状。
如果您的对象是一个圆圈,您只需使用dist()
功能检查鼠标是否在圆圈内。
如果您的对象是矩形,则只需检查光标位置是否在该矩形内。在一张纸上画出几个例子来帮助解决这个问题。
如果您的对象位于网格中,则可以将光标位置映射到网格位置。
如果您的对象更复杂,就像多边形一样,那么您的逻辑必须更复杂。谷歌是你的朋友。
在任何情况下,你都需要尝试一些东西,把MCVE放在一起(注意:这不应该是你的整个草图,它应该是一个小例子,我们可以复制和粘贴运行自己)并提出一个更具体的问题。祝你好运。