欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2024-03-11 13:17:01
介绍 java作为目前最为流行的计算机开发语言之一,学习java是高薪就业的好选择,本文介绍的这个小工具主要是使用mouseinfo类实时获取鼠标的信息,然后再jdial...

介绍

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);
  }
}

总结

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