java - 处理中每个对象的 mouseEventListener

标签 java oop mouseevent processing

我正在使用处理来实现这样的软件:

3D空间中有五个球(球体),每个球都可以点击,一旦我点击其中一个球,就会弹出一个气球(如图),如下所示:

enter image description here

在java中,就像GUI编程一样,每个组件都有自己的mouseEventListener,但是在处理时,是否有任何API为每个球体提供自己的监听器?

最佳答案

我有一个圆顶类似的东西,有一个我想要按下的对象数组。每个对象都必须有一个 mouseOver 方法,在该方法中,您检查鼠标是否在气球内(例如,然后返回 true)。 在您的 mousePress 方法中,检查每个气球的此方法,如果鼠标悬停,则执行您想要的任何操作。

气球类的示例代码:

Class Balloon{
  int posX, posY, width, height;

  Balloon(int posX, int posY, int width, int height){

    this.posX = posX;
    this.posY = posY;
    this.width = width;
    this.height = height;

  }

  boolean mouseOver(){

    if(mouseX < (posX-width) && mouseX > posX){
      if(mouseY < (posY-height) && mouseY > posY){
        return true;
      }
    }       
    return false;

  }

}

主类中 mousePress 的示例:

void mousePressed(){ 

  for(int i=0; i < ballons.length; i++){

    if(balloons[i].mouseOver()){
      //Perform your action
      break;
    }

  }

}

问候何塞。

关于java - 处理中每个对象的 mouseEventListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23166696/

相关文章:

java - 如何记录鼠标点击次数

java - 如何从 Firebase 存储获取下载 url?

docker 容器内的 Java 堆

c++ - 如何避免让我的 GameManager 类与大多数东西成为 friend ?

javascript - 当 Canvas 大小是相对的时,在 Canvas 上获得正确的鼠标位置?

linux - 在 linux wayland 上模拟鼠标运动

java - 如何搜索 HashMap 中的值以找到最高值,并返回该值和键?

java - 无法使用 Struts 约定插件加载 bean

python - 列出给定类的层次结构中的所有基类?

C++ : Association, 聚合和组合