如何对Java中的特殊鼠标键做出反应(前进/后退键)

时间:2016-07-23 19:55:44

标签: java key mouse mouselistener

我使用KeyBindings和MouseListener对键盘/鼠标输入做出反应。许多鼠标都有一个后退/前进按钮(例如,在webbrowser中来回翻页)。我如何对Java中的这些按钮做出反应?

2 个答案:

答案 0 :(得分:2)

特殊鼠标键通常由鼠标供应商软件绑定到虚拟击键。尝试实现KeyListener,在keyCode方法中设置断点,调试并观察当您按下鼠标上的特殊按钮时获得的{{1}}。这样,您可能还会处理键盘上的特殊键,这些键通常也提供相同的功能。

答案 1 :(得分:0)

只需实现MouseListener并查看mousePressed()事件。

快速而脏的程序来测试鼠标按钮:

package stackoverflowanswer;

import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;

public class MouseListenerApp{
public static void main(String[] args) {        
    Runnable r = new Runnable(){
        @Override
        public void run() {
            JFrame frame = new JFrame("mouselistener"); 
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

            frame.addMouseListener(new MouseListener() {
                @Override
                public void mouseClicked(MouseEvent e) {
                }

                @Override
                public void mousePressed(MouseEvent e) {
                    System.out.println(e.getButton());
                }

                @Override
                public void mouseReleased(MouseEvent e) {
                }

                @Override
                public void mouseEntered(MouseEvent e) {
                }

                @Override
                public void mouseExited(MouseEvent e) {
                }
            });

            frame.setSize(200,200);
            frame.setVisible(true);
        }
    };

    SwingUtilities.invokeLater(r);
    }
}

对我来说,前进/后退对应于键4/5。