java获取鼠标在屏幕上坐标的方法
作者:石炜贤的工作室
本文介绍的是如何用java获取鼠标在屏幕上的坐标,这个功能其实没什么难度可言,在这里分享给大家,是因为有时候我们需要这个工具,Java作为跨平台语言的优势在这个软件就可以体现出来,不需修改就可以在windows、mac、Linux上使用这个软件。下面来一起看看详细的介绍吧。
介绍
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); } }
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。