使用MouseAdapter在移动光标时获取光标位置

问题描述 投票:0回答:1

为什么不能使用MouseAdapter的mouseMoved()获取光标位置?我想在移动鼠标并将其显示在终端中时得到它。

我该怎么做?

import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JFrame;

public class FrameTest extends JFrame {
    public FrameTest() {
        addMouseListener(new MouseMovementListener());
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setLocation(200, 100);
        setSize(400, 400);
        setVisible(true);
    }

    class MouseMovementListener extends MouseAdapter {
        public void mouseMoved(MouseEvent evt) {
            System.out.println("(" + evt.getX() + ", " + evt.getY() + ")");
        }
    }

    public static void main(String[] args) {
        new FrameTest();    
    }
}
java swing mouseevent
1个回答
3
投票

很容易。您需要更改此行:

addMouseListener(new MouseMovementListener());

addMouseMotionListener(new MouseMovementListener());
© www.soinside.com 2019 - 2024. All rights reserved.