加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – JList MouseMoved和MousePressed

发布时间:2020-12-15 08:45:47 所属栏目:Java 来源:网络整理
导读:我扩展了一个JList以提供两个独立的功能,即项目的toolTipText和右键单击选项.两者都分开工作,但是当我尝试一起使用它们时,MouseMoved事件无法识别?以下是我的新听众方法的内容.我应该如何谈判这些不同的事件? public class JListTT extends javax.swing.JL
我扩展了一个JList以提供两个独立的功能,即项目的toolTipText和右键单击选项.两者都分开工作,但是当我尝试一起使用它们时,MouseMoved事件无法识别?以下是我的新听众方法的内容.我应该如何谈判这些不同的事件?

public class JListTT extends javax.swing.JList {
    public JListTT() {
        super();
       addMouseListener(new ttListener());
...
   class ttListener extends MouseAdapter {
        public void mouseMoved(MouseEvent e) {
             String nodeID = bldItemNodeID();
             theList.setToolTipText(nodeID);
            }
        public void mousePressed(MouseEvent ev)  {check(ev); }
        public void mouseReleased(MouseEvent ev) {check(ev); }
        public void mouseClicked(MouseEvent ev)  {check(ev); }
        public void check(MouseEvent ev) {
            if (ev.isPopupTrigger()) { 
                theList.setSelectedIndex(theList.locationToIndex(ev.getPoint())); 
                menu.show(theList,ev.getX(),ev.getY()); 
            }
        }
    }

解决方法

您将ttListener对象添加为MouseListener,但我没有看到您将ttListener对象添加为MouseMotionListener.例如:

ttListener myMouseadapter = new ttListener();
addMouseListener(myMouseadapter);
addMouseMotionListener(myMouseadapter);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读