gpt4 book ai didi

java - JList MouseMoved 和 MousePressed

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:32:34 26 4
gpt4 key购买 nike

我扩展了一个 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);

关于java - JList MouseMoved 和 MousePressed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8373097/

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