程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> java實現屏幕取色

java實現屏幕取色

編輯:JAVA編程入門知識

  文本要害字:程序設計/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);
  }

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

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

  
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved