1

Component クラスを拡張するクラスを作成しました。ペイント メソッドなどを設定します。クラスにマウス リスナを追加したところ、動作しません。マウスリスナークラスは次のとおりです。

public class RobotDetailsMouseListener implements MouseListener {

private Robot robot;
private boolean showDetails;

public RobotDetailsMouseListener(Robot robot) {
    this.robot = robot;
    showDetails = true;
}

@Override
public void mouseClicked(MouseEvent arg0) {
    System.out.println("This is being ran!");
    robot.setShowDetails(showDetails);
    showDetails = !showDetails;
}

@Override
public void mouseEntered(MouseEvent arg0) {
    System.out.println("Mouse is over a robot");

}

@Override
public void mouseExited(MouseEvent arg0) {
    System.out.println("Mouse is over a robot");

}

@Override
public void mousePressed(MouseEvent arg0) {
    System.out.println("Mouse is over a robot");

}

@Override
public void mouseReleased(MouseEvent arg0) {
    System.out.println("Mouse is over a robot");

}
}

これはメソッドを介してコンポーネントに追加されておりthis.addMouseListener()、 type の新しいオブジェクトを渡していますRobotDetailsMouseListener():

this.addMouseListener(new RobotDetailsMouseListener(this));

コンポーネント自体は画面上を頻繁に移動します (2D 平面上で自律型ロボットをシミュレートします)。それと何か関係があるのでしょうか?

前もって感謝します!

4

0 に答える 0