Java MouseListener 在没有 JButton 的情况下创建 Button

Java MouseListener creating a Button without JButton

我想为我的 mini-game 创建一个暂停屏幕。为此,您按下 esc 按钮,将出现一张带有以下按钮的图片:Resume、Options 和 Exit。在我的 MouseInput-class 中,是 mousePressed 方法。我只是想,如果我在按钮的位置按下鼠标,就会发生一些事情。我已经做了一半,但我不知道剩下的。该方法现在只会使用盒子的一角。(抱歉,如果我的英语不好)

菜单应如下所示(来自 "game" 的屏幕截图)
http://puu.sh/e1b6v/79682e61f4.PNG

package de.dragonbone.rpg.input;

import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

public class MouseInput implements MouseListener {

int mx;
int my;

@Override
public void mouseClicked(MouseEvent arg0) {

}

@Override
public void mouseEntered(MouseEvent arg0) {

}

@Override
public void mouseExited(MouseEvent arg0) {

}

@Override
public void mousePressed(MouseEvent e) {
    mx = e.getX();
    my = e.getY();

    if (mx == 154 && my == 160) {
        System.out.println("Resume");
    }

    System.out.println("X= " + mx + "  Y= " + my);
}

@Override
public void mouseReleased(MouseEvent arg0) {

}

}

位置应该是一个范围而不是一个点。

范围示例:

if (mx >= 154 || mx<=200 && my >= 160 && my<= 200) {
    System.out.println("Resume");
}

你必须给按钮添加 mouselistener。

class MyMouseListener extends MouseAdapter
{
     @Override
     public void mousePressed(MouseEvent me)
     {
        JButton jb=(JButton)me.getSource();
        String str=jb.getActionCommand();
        if(str.equals("Resume"))
          System.out.println("Resumed");
        .....
        .....
     }
}
JButton resume=new JButton("Resume");
resume.addMouseListener(new MyMouseListener());