首页新闻找找看学习计划

java swing鼠标监听问题

0
悬赏园豆:15 [待解决问题]
需要对一个JButton b添加一个监听事件达到创建一个自定义的Position(x,y)的对象:
监听类NewListen中需要用到鼠标在面板上点击取坐标值来完成创建一个Position(x,y)的对象。
部分代码如下,得不到想要的结果,鼠标取的坐标好像完全没用,不管在面板的什么位置点击取值,得到的结果都是position(0,0).哪位大侠帮忙看看问题出在哪里? int xFromMus, yFromMus; b.addActionListener(NewListen()); public class NewListen implements ActionListener{ @Override public void actionPerformed(ActionEvent ave) { kp.addMouseListener(musLyss);//kp为之前建立的面板。 Position pos=new Position(xFromMus,yFromMus);
print(pos); } class MusLyss extends MouseAdapter{ public void mouseClicked(MouseEvent mev) { if(mev.getButton()==MouseEvent.BUTTON{ xFromMus=mev.getX(); yFromMus=mev.getY(); } } }
jinleiDev的主页 jinleiDev | 初学一级 | 园豆:142
提问于:2018-05-02 06:55

谢谢回答!不过程序似乎根本就没成功把鼠标监听加上去。因为我只点击按钮b, 都还没点击屏幕的时候,控制台就把位置对象(0,0)打印出来了。我检查了一下,明明在按钮b上加了事件监听,事件监听内再对面板加了鼠标监听啊 好奇怪 好像鼠标监听根本就没起作用 可以帮看一下是什么原因吗?多谢

jinleiDev 1年前
< >
分享
所有回答(2)
0

估计是坐标系和相对那个组件有关,参考 https://blog.csdn.net/shu15121856/article/details/79068541

2012 | 园豆:18982 (专家六级) | 2018-05-02 08:07
0

已经解决了

jinleiDev | 园豆:142 (初学一级) | 2018-05-03 16:10
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册