服务器之家

服务器之家 > 正文

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

时间:2020-07-16 11:40     来源/作者:石炜贤的工作室

介绍

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

代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
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);
  }
}

总结

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

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
返回顶部