代码1。在屏幕上输出当前鼠标所在的屏幕颜色。DuPHTML5中文学习网 - HTML5先行者学习网
import java.awt.*;DuPHTML5中文学习网 - HTML5先行者学习网
public class PickColor {DuPHTML5中文学习网 - HTML5先行者学习网
public static void main(String[] args) {DuPHTML5中文学习网 - HTML5先行者学习网
PickColor pc = new PickColor();DuPHTML5中文学习网 - HTML5先行者学习网
Color color = pc.pickColor();DuPHTML5中文学习网 - HTML5先行者学习网
System.out.println("color = "+color);DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
public Color pickColor() {DuPHTML5中文学习网 - HTML5先行者学习网
Color pixel = new Color(0,0,0);DuPHTML5中文学习网 - HTML5先行者学习网
Robot robot = null;DuPHTML5中文学习网 - HTML5先行者学习网
Point mousepoint;DuPHTML5中文学习网 - HTML5先行者学习网
int R,G,B;DuPHTML5中文学习网 - HTML5先行者学习网
// MouseInfo mouseinfo = new MouseInfo();DuPHTML5中文学习网 - HTML5先行者学习网
try {DuPHTML5中文学习网 - HTML5先行者学习网
robot = new Robot();DuPHTML5中文学习网 - HTML5先行者学习网
} catch (AWTException e) {DuPHTML5中文学习网 - HTML5先行者学习网
e.printStackTrace();DuPHTML5中文学习网 - HTML5先行者学习网
System.exit(1);DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
mousepoint = MouseInfo.getPointerInfo().getLocation();DuPHTML5中文学习网 - HTML5先行者学习网
pixel = robot.getPixelColor(mousepoint.x,mousepoint.y);DuPHTML5中文学习网 - HTML5先行者学习网
R = pixel.getRed();DuPHTML5中文学习网 - HTML5先行者学习网
G = pixel.getGreen();DuPHTML5中文学习网 - HTML5先行者学习网
return pixel;DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
代码2。使用一个GUI,输出当前鼠标所在的屏幕颜色,并改变GUI的背景色。DuPHTML5中文学习网 - HTML5先行者学习网
// create by kin 2004/10/24 refer to http://dev.csdn.net/article/44/44529.shtmDuPHTML5中文学习网 - HTML5先行者学习网
import java.awt.*;DuPHTML5中文学习网 - HTML5先行者学习网
import java.awt.event.*;DuPHTML5中文学习网 - HTML5先行者学习网
import javax.swing.*;DuPHTML5中文学习网 - HTML5先行者学习网
import javax.swing.event.*;DuPHTML5中文学习网 - HTML5先行者学习网
public class PickColor2 extends JFrame {DuPHTML5中文学习网 - HTML5先行者学习网
public static void main(String[] args) {DuPHTML5中文学习网 - HTML5先行者学习网
PickColor2 pc = new PickColor2();DuPHTML5中文学习网 - HTML5先行者学习网
//Color color = pc.pickColor();DuPHTML5中文学习网 - HTML5先行者学习网
//System.out.println("color = "+color);DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
public PickColor2 () {DuPHTML5中文学习网 - HTML5先行者学习网
super("Pick Color");DuPHTML5中文学习网 - HTML5先行者学习网
setSize(200,200);DuPHTML5中文学习网 - HTML5先行者学习网
JPanel p =new JPanel();DuPHTML5中文学习网 - HTML5先行者学习网
getContentPane().add(p);DuPHTML5中文学习网 - HTML5先行者学习网
// this mouse listener only is limited in the java desktop regionDuPHTML5中文学习网 - HTML5先行者学习网
p.addMouseMotionListener(new PickColorMouesMotionListener(p));DuPHTML5中文学习网 - HTML5先行者学习网
// this thread is really effected!DuPHTML5中文学习网 - HTML5先行者学习网
new PickColorThread(p).start();DuPHTML5中文学习网 - HTML5先行者学习网
setVisible(true);DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
/**Mouse Motion Listener,when mouse are moving, then set corresping screens color to the JPanels background Color. */DuPHTML5中文学习网 - HTML5先行者学习网
class PickColorMouesMotionListener extends MouseMotionAdapter {DuPHTML5中文学习网 - HTML5先行者学习网
private JPanel p = null;DuPHTML5中文学习网 - HTML5先行者学习网
PickColorMouesMotionListener(JPanel p) {DuPHTML5中文学习网 - HTML5先行者学习网
this.p = p;DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
public void mouseMoved(MouseEvent e) {DuPHTML5中文学习网 - HTML5先行者学习网
Color c = pickColor();DuPHTML5中文学习网 - HTML5先行者学习网
this.p.setBackground(c);DuPHTML5中文学习网 - HTML5先行者学习网
//System.out.println (c);DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
class PickColorThread extends Thread {DuPHTML5中文学习网 - HTML5先行者学习网
private JPanel p = null;DuPHTML5中文学习网 - HTML5先行者学习网
PickColorThread(JPanel p){DuPHTML5中文学习网 - HTML5先行者学习网
this.p=p;DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
public void run () {DuPHTML5中文学习网 - HTML5先行者学习网
while (true) {DuPHTML5中文学习网 - HTML5先行者学习网
try {DuPHTML5中文学习网 - HTML5先行者学习网
Thread.currentThread().sleep(10);DuPHTML5中文学习网 - HTML5先行者学习网
Color c = pickColor();DuPHTML5中文学习网 - HTML5先行者学习网
this.p.setBackground(c);DuPHTML5中文学习网 - HTML5先行者学习网
// try change the foreground when background s r <= 50 or g <= 50 or b <= 50DuPHTML5中文学习网 - HTML5先行者学习网
Graphics g = p.getGraphics ();DuPHTML5中文学习网 - HTML5先行者学习网
if (c.getRed() <=50 || c.getGreen() <= 50 || c.getBlue() <= 50) {DuPHTML5中文学习网 - HTML5先行者学习网
g.setColor(Color.WHITE);DuPHTML5中文学习网 - HTML5先行者学习网
} else {DuPHTML5中文学习网 - HTML5先行者学习网
g.setColor(Color.BLACK);DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
g.drawString(c.toString(),0,100);DuPHTML5中文学习网 - HTML5先行者学习网
g = null;DuPHTML5中文学习网 - HTML5先行者学习网
//System.out.println (c);DuPHTML5中文学习网 - HTML5先行者学习网
} catch (InterruptedException e) {DuPHTML5中文学习网 - HTML5先行者学习网
e.printStackTrace();DuPHTML5中文学习网 - HTML5先行者学习网
System.exit(1);DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
/**Get Screen Color*/DuPHTML5中文学习网 - HTML5先行者学习网
public Color pickColor() {DuPHTML5中文学习网 - HTML5先行者学习网
Color pixel = new Color(0,0,0);DuPHTML5中文学习网 - HTML5先行者学习网
Robot robot = null;DuPHTML5中文学习网 - HTML5先行者学习网
Point mousepoint;DuPHTML5中文学习网 - HTML5先行者学习网
int R,G,B;DuPHTML5中文学习网 - HTML5先行者学习网
// MouseInfo mouseinfo = new MouseInfo();DuPHTML5中文学习网 - HTML5先行者学习网
try {DuPHTML5中文学习网 - HTML5先行者学习网
robot = new Robot();DuPHTML5中文学习网 - HTML5先行者学习网
} catch (AWTException e) {DuPHTML5中文学习网 - HTML5先行者学习网
e.printStackTrace();DuPHTML5中文学习网 - HTML5先行者学习网
System.exit(1);DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
mousepoint = MouseInfo.getPointerInfo().getLocation();DuPHTML5中文学习网 - HTML5先行者学习网
pixel = robot.getPixelColor(mousepoint.x,mousepoint.y);DuPHTML5中文学习网 - HTML5先行者学习网
R = pixel.getRed();DuPHTML5中文学习网 - HTML5先行者学习网
G = pixel.getGreen();DuPHTML5中文学习网 - HTML5先行者学习网
return pixel;DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网
}DuPHTML5中文学习网 - HTML5先行者学习网