Java机器人类|获取给定点的像素颜色

机器人是java的一部分。awt软件包。Robot类基本上用于生成本机系统输入事件,用于自动运行演示、测试自动化和其他使用鼠标和键盘控制的应用程序。 Robot类生成可用于控制鼠标、键盘和屏幕截图的事件。 在本文中,我们将讨论如何获得用户提到的屏幕上点的像素颜色。 使用的方法:

null
getPixelColor(int x, int y)  This function returns an object of the color class of the given screen coordinates. 

在下面的程序中,我们将打印一个标签,其中包含输入像素的RGB值,标签的文本将为像素颜色

JAVA

// Java program to get the pixel color of
// given screen coordinates
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class color extends JFrame
implements ActionListener {
// textfield to get x, y coordinates
static JTextField x, y;
// button
static JButton b;
// create a frame
static JFrame f;
// label
static JLabel l;
public static void main()
{
// create a frame
f = new JFrame( "pixel Color" );
// label to show the RGB value
l = new JLabel( "no value" );
// create the text field
x = new JTextField( 16 );
y = new JTextField( 16 );
// create a button
b = new JButton( "find" );
// create an object of the class
color co = new color();
// add ActionListener
b.addActionListener(co);
// create a panel
JPanel p = new JPanel();
// add textfield and button to the panel
p.add(x);
p.add(y);
p.add(b);
p.add(l);
// add the panel
f.add(p);
// set the size of the frame
f.setSize( 500 , 500 );
f.show();
}
// if the button is pressed
public void actionPerformed(ActionEvent e)
{
String s = e.getActionCommand();
if (s.equals( "find" )) {
int xp, yp;
// get user inputs of x and y position
xp = Integer.parseInt(x.getText());
yp = Integer.parseInt(y.getText());
// try and catch block to handle exceptions
try {
// create an object of robot class
Robot r = new Robot();
// get the pixel color
c = r.getPixelColor(xp, yp);
}
catch (Exception evt) {
// print error message
System.err.println(evt.getMessage());
}
Color c;
// set the RGB value to the label
// and to its foreground
l.setForeground(c);
l.setText( "Red = " + c.getRed() + ",
Green = " + c.getGreen() + " , Blue = " + c.getBlue());
}
}
}


输出:

图片[1]-Java机器人类|获取给定点的像素颜色-yiteyi-C++库

注: 以下程序可能无法在联机编译器中运行,请使用脱机IDE。

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享