在Java中实现MouseListener的更简单方法
我有一个更一般的问题要问。 当我必须在类中实现MouseStener时,编译器会自动强制我实现MouseStener接口中的每个方法。 像这样: 通常情况下,我只需要一两个。有没有一种方法可以实现我所需要的,或者我必须处理浪费的代码行? 谢谢你抽出时间。 最好的 Dauta使用a,它是一个基本类,实现了在Java中实现MouseListener的更简单方法,java,swing,awt,mouselistener,Java,Swing,Awt,Mouselistener,我有一个更一般的问题要问。 当我必须在类中实现MouseStener时,编译器会自动强制我实现MouseStener接口中的每个方法。 像这样: 通常情况下,我只需要一两个。有没有一种方法可以实现我所需要的,或者我必须处理浪费的代码行? 谢谢你抽出时间。 最好的 Dauta使用a,它是一个基本类,实现了MouseListener(和MosueWheelListener和MouseMotionListener)接口,但提供了所有方法的空白实现,这意味着您可以只覆盖您想要的方法 MouseListe
MouseListener
(和MosueWheelListener
和MouseMotionListener
)接口,但提供了所有方法的空白实现,这意味着您可以只覆盖您想要的方法
MouseListener mouseLtnr = new MouseAdapter()
{
@Override
public void mouseClicked(MouseEvent arg0) {
// TODO Auto-generated method stub
counter++;
xs.add(MouseInfo.getPointerInfo().getLocation().x - getLocationOnScreen().x);
ys.add(MouseInfo.getPointerInfo().getLocation().y - getLocationOnScreen().y);
System.out.println(xs.get(counter-1) + " , " + ys.get(counter-1));
if(flag == false)
repaint();
}
}
如果你仔细研究一下这些文档,你还会发现更多类似这样的类;)
仅供参考:MouseInfo.getPointerInfo()
将返回鼠标光标相对于屏幕的位置,而不是生成事件的组件。您也可以使用MouseEvent@getXOnScreen
和MosueEvent@getYOnScreen
或根据您的需要;) 使用a,它是一个基本类,实现了MouseListener
(和MosueWheelListener
和MouseMotionListener
)接口,但提供了所有方法的空白实现,这意味着您可以只覆盖您想要的方法
MouseListener mouseLtnr = new MouseAdapter()
{
@Override
public void mouseClicked(MouseEvent arg0) {
// TODO Auto-generated method stub
counter++;
xs.add(MouseInfo.getPointerInfo().getLocation().x - getLocationOnScreen().x);
ys.add(MouseInfo.getPointerInfo().getLocation().y - getLocationOnScreen().y);
System.out.println(xs.get(counter-1) + " , " + ys.get(counter-1));
if(flag == false)
repaint();
}
}
如果你仔细研究一下这些文档,你还会发现更多类似这样的类;)
仅供参考:MouseInfo.getPointerInfo()
将返回鼠标光标相对于屏幕的位置,而不是生成事件的组件。您也可以使用MouseEvent@getXOnScreen
和MosueEvent@getYOnScreen
或根据您的需要;) 使用a,它是一个基本类,实现了MouseListener
(和MosueWheelListener
和MouseMotionListener
)接口,但提供了所有方法的空白实现,这意味着您可以只覆盖您想要的方法
MouseListener mouseLtnr = new MouseAdapter()
{
@Override
public void mouseClicked(MouseEvent arg0) {
// TODO Auto-generated method stub
counter++;
xs.add(MouseInfo.getPointerInfo().getLocation().x - getLocationOnScreen().x);
ys.add(MouseInfo.getPointerInfo().getLocation().y - getLocationOnScreen().y);
System.out.println(xs.get(counter-1) + " , " + ys.get(counter-1));
if(flag == false)
repaint();
}
}
如果你仔细研究一下这些文档,你还会发现更多类似这样的类;)
仅供参考:MouseInfo.getPointerInfo()
将返回鼠标光标相对于屏幕的位置,而不是生成事件的组件。您也可以使用MouseEvent@getXOnScreen
和MosueEvent@getYOnScreen
或根据您的需要;) 使用a,它是一个基本类,实现了MouseListener
(和MosueWheelListener
和MouseMotionListener
)接口,但提供了所有方法的空白实现,这意味着您可以只覆盖您想要的方法
MouseListener mouseLtnr = new MouseAdapter()
{
@Override
public void mouseClicked(MouseEvent arg0) {
// TODO Auto-generated method stub
counter++;
xs.add(MouseInfo.getPointerInfo().getLocation().x - getLocationOnScreen().x);
ys.add(MouseInfo.getPointerInfo().getLocation().y - getLocationOnScreen().y);
System.out.println(xs.get(counter-1) + " , " + ys.get(counter-1));
if(flag == false)
repaint();
}
}
如果你仔细研究一下这些文档,你还会发现更多类似这样的类;)
仅供参考:
MouseInfo.getPointerInfo()
将返回鼠标光标相对于屏幕的位置,而不是生成事件的组件。您也可以使用MouseEvent@getXOnScreen
和MosueEvent@getYOnScreen
或根据您的需要;) 我投了赞成票,但我想你指的是MouseAdapter
tho.@Jean-FrançoisSavard可能是:p,似乎我的手指又超出了我的大脑:p这似乎正是我想要的。谢谢大家!@Dauta别担心,这是对你的编码生活产生巨大影响的宝石之一:)我投了更高的票,但我想你的意思是MouseAdapter
tho。@Jean-FrançoisSavard可能是:P,似乎我的手指又超出了我的大脑:P这似乎正是我想要的。谢谢大家!@Dauta别担心,这是对你的编码生活产生巨大影响的宝石之一:)我投了更高的票,但我想你的意思是MouseAdapter
tho。@Jean-FrançoisSavard可能是:P,似乎我的手指又超出了我的大脑:P这似乎正是我想要的。谢谢大家!@Dauta别担心,这是对你的编码生活产生巨大影响的宝石之一:)我投了更高的票,但我想你的意思是MouseAdapter
tho。@Jean-FrançoisSavard可能是:P,似乎我的手指又超出了我的大脑:P这似乎正是我想要的。谢谢大家!@Dauta不用担心,它是那些让你的编码生活发生巨大变化的宝石之一:)