gpt4 book ai didi

Java MouseAdapter 没有响应

转载 作者:行者123 更新时间:2023-12-01 18:13:11 24 4
gpt4 key购买 nike

我为我的 JPanel 编写了一个 MouseAdapter,但它表现得很奇怪,这里是代码本身,其中包含从文档中覆盖的所有可能操作。

private class MAdapter extends MouseAdapter {
@Override
public void mousePressed(MouseEvent e){
System.out.println(e.getX()+""+e.getY());
}

@Override
public void mouseReleased(MouseEvent e){
System.out.println(e.getX()+""+e.getY());
}

@Override
public void mouseClicked(MouseEvent e){
System.out.println(e.getX()+""+e.getY());
}

@Override
public void mouseEntered(MouseEvent e){
System.out.println(e.getX()+""+e.getY());
}

@Override
public void mouseExited(MouseEvent e){
System.out.println(e.getX()+""+e.getY());
}

@Override
public void mouseWheelMoved(MouseEvent e){
System.out.println(e.getX()+""+e.getY());
}

@Override
public void mouseMoved(MouseEvent e){
System.out.println(e.getX()+""+e.getY());
}

@Override
public void mouseDragged(MouseEvent e){
System.out.println(e.getX()+""+e.getY());
}
}

问题是:它似乎只对前五个 MouseListener 操作使用react,对 MouseMotionListener 操作(后两个)没有反应,而 MouseWheelMoved 已灰显并表示它不会覆盖任何操作父类(super class)的方法。

最佳答案

MouseAdapterMouseListenerMosueWheelListenerMouseMotionListener

的无操作(空)实现

它旨在让您的生活更轻松,因为您不需要实现这些接口(interface)定义的每个方法,只是为了获得 mouseClicked 事件

您需要分别注册每种类型的实现

MAdapter ma = new MAdapter();
addMouseListener(ma);
addMouseMotionListener(ma);
addMouseWheelListener(ma);

关于Java MouseAdapter 没有响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31342207/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com