java实现屏幕取色

2016-02-19 16:00 78 1 收藏

只要你有一台电脑或者手机,都能关注图老师为大家精心推荐的java实现屏幕取色,手机电脑控们准备好了吗?一起看过来吧!

【 tulaoshi.com - 编程语言 】

  文本要害字:程序设计/Java/入门

  声明:
  本文核心代码选择自langzi84的blog请看以下链接
  http://dev.csdn.net/article/44/article/44/44529.shtm
  http://blog.csdn.net/langzi84/archive/2004/10/21/146331.ASPx

!-- frame contents -- !-- /frame contents --
  

  代码1。在屏幕上输出当前鼠标所在的屏幕颜色。
  import java.awt.*;

  public class PickColor {
  public static void main(String[] args) {
  PickColor pc = new PickColor();
  Color color = pc.pickColor();
  System.out.println("color = "+color);
  }

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  public Color pickColor() {
  Color pixel = new Color(0,0,0);
  Robot robot = null;
  Point mousepoint;
  int R,G,B;
  // MouseInfo mouseinfo = new MouseInfo();
  try {
  robot = new Robot();
  } catch (AWTException e) {
  e.printStackTrace();
  System.exit(1);
  }
  mousepoint = MouseInfo.getPointerInfo().getLocation();
  pixel = robot.getPixelColor(mousepoint.x,mousepoint.y);
  R = pixel.getRed();
  G = pixel.getGreen();
  return pixel;
  }

  }

  代码2。使用一个GUI,输出当前鼠标所在的屏幕颜色,并改变GUI的背景色。
  // create by kin 2004/10/24 refer to http://dev.csdn.net/article/44/44529.shtm

  import java.awt.*;
  import java.awt.event.*;
  import javax.swing.*;
  import javax.swing.event.*;

  public class PickColor2 extends JFrame {
  public static void main(String[] args) {
  PickColor2 pc = new PickColor2();
  //Color color = pc.pickColor();
  //System.out.println("color = "+color);
  }

  public PickColor2 () {
  super("Pick Color");
  setSize(200,200);
  JPanel p =new JPanel();
  getContentPane().add(p);
  // this mouse listener only is limited in the java desktop region
  p.addMouseMotionListener(new PickColorMouesMotionListener(p));
  // this thread is really effected!
  new PickColorThread(p).start();
  setVisible(true);
  }

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  /**Mouse Motion Listener,when mouse are moving, then set corresping screens color to the JPanels background Color. */
  class PickColorMouesMotionListener extends MouseMotionAdapter {
  private JPanel p = null;
  PickColorMouesMotionListener(JPanel p) {
  this.p = p;
  }
  public void mouseMoved(MouseEvent e) {
  Color c = pickColor();
  this.p.setBackground(c);
  //System.out.println (c);
  }
  }

  class PickColorThread extends Thread {
  private JPanel p = null;
  PickColorThread(JPanel p){
  this.p=p;
  }
  public void run () {
  while (true) {
  try {
  Thread.currentThread().sleep(10);
  Color c = pickColor();

  

来源:https://www.tulaoshi.com/n/20160219/1610875.html

延伸阅读
标签: Delphi
  在网络管理中,有时需要通过监视远程计算机屏幕来了解网上微机的使用情况。虽然,市面上有很多软件可以实现该功能,有些甚至可以进行远程控制,但在使用上缺乏灵活性,如无法指定远程计算机屏幕区域的大小和位置,进而无法在一屏上同时监视多个屏幕。其实,可以用Delphi自行编制一个灵活的远程屏幕抓取工具,简述如下。 一...
标签: Web开发
  FtpList部分是用来显示FTP服务器上的文件;   GetButton部分为从FTP服务器下传一个文件;   PutButton部分为向FTP服务器上传一个文件。   别忘了在程序中还要引入两个库文件(import sun.net.*,import sun.net.ftp.*)。   以下是这三部分的JAVA源程序:   (1)显示FTP服务器上的文件  ...
很多主流框架都使用了反射技术.像ssh框架都采用两种技术 xml做配置文件+反射技术. 与反射有关的类包. java.lang.reflect.*;和java.lang.Class; Java中所有类型(包括基本类型)都对应一个Class对象,这个Class就是java.lang.Class。即每一个类型,在Class中都有一个Class对象跟它对应.Class 没有公共构造方法。注意不是没有,是没有公共的. ...
Stripes是一个以让程序员的web开发简单而高效为准则来设计的基于动作的开源Java web框架。本文将介绍Stripes与其它如Struts之类基于动作的框架的区别和其提供的一些存在于Ruby on Rails之中的简单性。 Stripes是一个以让程序员的web开发简单而高效为准则来设计的基于动作的开源Java web框架。传统的Java web开发着眼于借去耦(Decoupl...
熟悉MS-Windows和XWindowSystem事件驱动编程模型的开发人员,习惯于传递在某种事件发生时调用(即“回调”)的函数指针。Java的面向对象模型目前并不支持方法指针,这样似乎就不可能使用这种很好的机制。但我们并不是一点办法都没有! !-- frame contents -- !-- /frame contents -- Java的接口支持提供了一种获得回调的等价功...

经验教程

953

收藏

81
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部