当前位置: 首页 > 编程笔记 >

java获取鼠标在屏幕上坐标的方法

龙永思
2023-03-14
本文向大家介绍java获取鼠标在屏幕上坐标的方法,包括了java获取鼠标在屏幕上坐标的方法的使用技巧和注意事项,需要的朋友参考一下

介绍

java作为目前最为流行的计算机开发语言之一,学习java是高薪就业的好选择,本文介绍的这个小工具主要是使用MouseInfo类实时获取鼠标的信息,然后再JDialog上显示出来。希望下面的内容介绍,能够让大家对于如何获取鼠标在屏幕上的坐标更加了解,一起来学习下吧。

代码如下:

import java.awt.BorderLayout;
import java.awt.FlowLayout;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import java.awt.Font;
import java.awt.Point;
import java.util.Timer;
import java.util.TimerTask;
import java.awt.Color;

public class MouseInfo extends JFrame {

  private final JPanel contentPanel = new JPanel();
  JLabel value_x = null;
  JLabel value_y = null;

  /**
   * Launch the application.
   */
  public static void main(String[] args) {
    try {
      MouseInfo info_frame = new MouseInfo();
      info_frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      info_frame.setVisible(true);
      info_frame.setAlwaysOnTop(true);
      Timer timer = new Timer();
      timer.schedule(new TimerTask() {
        @Override
        public void run() {
          Point point = java.awt.MouseInfo.getPointerInfo().getLocation();
          // System.out.println("Location:x=" + point.x + ", y=" +
          // point.y);
          info_frame.value_x.setText("" + point.x);
          info_frame.value_y.setText("" + point.y);
        }
      }, 100, 100);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }

  /**
   * Create the dialog.
   */
  public MouseInfo() {
    setTitle("\u9F20\u6807\u5750\u6807\u83B7\u53D6\u5668");
    setBounds(100, 100, 217, 156);
    getContentPane().setLayout(new BorderLayout());
    contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
    getContentPane().add(contentPanel, BorderLayout.CENTER);
    contentPanel.setLayout(null);

    JLabel lblx = new JLabel("\u5750\u6807x:");
    lblx.setFont(new Font("宋体", Font.PLAIN, 15));
    lblx.setBounds(22, 27, 66, 31);
    contentPanel.add(lblx);

    JLabel lbly = new JLabel("\u5750\u6807y:");
    lbly.setFont(new Font("宋体", Font.PLAIN, 15));
    lbly.setBounds(22, 68, 66, 31);
    contentPanel.add(lbly);

    value_x = new JLabel("0");
    value_x.setForeground(Color.BLUE);
    value_x.setFont(new Font("宋体", Font.PLAIN, 20));
    value_x.setBounds(82, 27, 66, 31);
    contentPanel.add(value_x);

    value_y = new JLabel("0");
    value_y.setForeground(Color.BLUE);
    value_y.setFont(new Font("宋体", Font.PLAIN, 20));
    value_y.setBounds(82, 68, 66, 31);
    contentPanel.add(value_y);
  }
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

 类似资料:
  • 问题内容: JFreeChart中是否有一种方法可以从ChartMouseEvent中确定鼠标悬停在绘图空间中的x,y坐标?我尝试使用域十字线值,但这似乎不准确并且滞后于实际的鼠标事件。 谢谢, 杰夫 问题答案: 鼠标坐标相对于ChartPanel,因此您需要对其进行转换:

  • 问题内容: 斯威夫特新手。 我在执行一项琐碎的任务时遇到了麻烦。我要做的就是 按需 获取鼠标光标的x,y坐标。我宁可 不要 等到鼠标移动事件触发后再抓住指针的坐标。 将不胜感激! 问题答案: 您应该看看NSEvent方法mouseLocation 编辑/更新: Xcode 11•Swift 5.1 如果您希望在应用程序处于活动状态时监视任何窗口上的事件,则可以添加与mouseMoved掩码匹配的L

  • 我试图根据用户输入的坐标捕捉区域截图。基本上,用户在屏幕上点击得到x,y坐标,然后在其他地方点击另一对x,y坐标,然后将其放入一个矩形中,并使用机器人库创建屏幕截图。 我有的问题是,我得到了随机截图,这不是用户输入的坐标,我怎么能考虑包括0的坐标,因为矩形值必须超过1。 以下是我迄今为止的代码:

  • 本文向大家介绍javascript获取当前鼠标坐标的方法,包括了javascript获取当前鼠标坐标的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了javascript获取当前鼠标坐标的方法。分享给大家供大家参考。具体实现方法如下: 对于javascript获取当前鼠标坐标来说,得对不同浏览器的坐标位置有所了解。具体代码如下: 希望本文所述对大家的javascript程序设计有所帮助

  • 本文向大家介绍JS网页在线获取鼠标坐标值的方法,包括了JS网页在线获取鼠标坐标值的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS网页在线获取鼠标坐标值的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的javascript程序设计有所帮助。

  • 本文向大家介绍使用js获取鼠标坐标相关面试题,主要包含被问及使用js获取鼠标坐标时的应答技巧和注意事项,需要的朋友参考一下