如何使用Java MouseeEvent数据

如何使用Java MouseeEvent数据,java,swing,mouseevent,point,mouse-listeners,Java,Swing,Mouseevent,Point,Mouse Listeners,很抱歉,如果这不是合适的网站,但我最近一直在学习Java,我已经开始关注MouseeEvents。我已经让它处理控制台中输出的数据,但我不知道如何使用这些数据。这是正在输出的数据: java.awt.event.MouseEvent[MOUSE_RELEASED,(4,26),absolute(4,26),button=1,modifiers=Button1,clickCount=1] on frame0 我需要访问数据中的“(4,26)”,但我不知道如何执行此操作。数据的格式为MouseEv

很抱歉,如果这不是合适的网站,但我最近一直在学习Java,我已经开始关注MouseeEvents。我已经让它处理控制台中输出的数据,但我不知道如何使用这些数据。这是正在输出的数据:

java.awt.event.MouseEvent[MOUSE_RELEASED,(4,26),absolute(4,26),button=1,modifiers=Button1,clickCount=1] on frame0
我需要访问数据中的“(4,26)”,但我不知道如何执行此操作。数据的格式为MouseEvent

谢谢,如果这是一个错误的网站,再次表示歉意

编辑:这是使用的代码:

public static void main(String[] args) {
    JFrame jf = new JFrame();
    jf.add(new main());
    jf.addMouseListener(new MouseListener() {
        @Override
        public void mouseReleased(MouseEvent e) {
            System.out.println(e);
        }
        @Override
        public void mousePressed(MouseEvent e) {
            // Mouse Pressed
        }
        @Override
        public void mouseExited(MouseEvent e) {
            // Mouse Exit
        }
        @Override
        public void mouseEntered(MouseEvent e) {
            // Mouse Enter
        }
        @Override
        public void mouseClicked(MouseEvent e) {
            // General Click
        }
    });
    jf.setSize(Settings.map_width, Settings.map_height);
    jf.setTitle(Settings.frame_name);
    jf.setResizable(Settings.frame_resize);
    jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    jf.setVisible(true);
}
如果您查看,您将看到它有许多方法可用于从事件中获取信息

例如,
e.getX()
将返回
4
e.getY()
将返回
26
给定您发布的代码和事件示例。

如果您检查了java,您将知道您想要获取的数据是通过以下方式获得的:

e.getX()
e.getY()

这是正确的网站。请发布一篇文章,以便我们了解您是如何获得信息的。最好链接到最新版本的JavaDocs。我已将您的答案编辑为指向J2SE 7。有关获取最新文档链接的提示,请参见.Edited。见我对阿德尔的评论@安德鲁;我实际上不同意。我特意链接到Java6文档,因为它是大多数人将要使用的(即使这是一个范围,我也看到很多地方仍然在Java5上标准化)。我也不会链接到C++11文档,除非问题是关于C++11.0和Java 7文档的。包含Java 5或6文档中的所有内容,并添加了2个内容:1)它们列出了新类2)它们显示了
@deprecated
标志。我强调了第二点,因为如果您在版本
b
中使用的某些方法在版本
c
中被弃用,那么按照版本
a
中引入的方法,现在更改为版本
b
设计的代码是有意义的。作为旁白:1)我使用的是V.6,但总是参考V.7文档。2) OP没有说明他们使用的版本。但如果你不同意我的推理,我会尽量记住,而不是编辑你的帖子。@AndrewThompson-我理解你的推理,不否认你的论点很好。这就是说,列出新方法的问题是您可能遇到的问题,然后导致“我做了这件事,它给了我这个错误”的后续问题。我不认为有一个完美的答案,除了把标签分成特定的版本。。。这也不是最优的。当然,随着J7的广泛采用,这个问题变得毫无意义,或者至少时间因素是向前推进的一个很好的合理化。“列出新方法的问题是您可能遇到的问题,然后导致“我做了这件事,它给了我这个错误”的后续行动。1)这就是
@因为
标记的用途2) 是的,但是错误很明显。