java实现屏幕取色

2016-02-19 16:00 84 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);
  }

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

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

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

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

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

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

  

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

延伸阅读
标签: Java JAVA基础
目前整个开发社区对AOP(Aspect Oriented Programing)推崇备至,也涌现出大量支持AOP的优秀Framework,--Spring, JAC, Jboss AOP 等等。AOP似乎一时之间成了潮流。Java初学者不禁要发出感慨,OOP还没有学通呢,又来AOP。本文不是要在理论上具体阐述何为AOP, 为何要进行AOP . 要详细了解学习AOP可以到它老家http://aosd.net去瞧瞧。...
去掉标题栏: requestWindowFeature(Window.FEATURE_NO_TITLE); API上是这么说的: int     FEATURE_NO_TITLE     Flag for the "no title" feature, turning off the title at the top of the screen. 屏幕全屏: getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); API上是这么说的...
标签: 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...

经验教程

285

收藏

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