📄 robottest.java
字号:
/**
@version 1.00 17 Aug 1998
@author Cay Horstmann
*/
import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import javax.swing.*;
public class RobotTest
{
public static void main(String[] args)
{
// make frame with a button panel
ButtonFrame frame = new ButtonFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
// attach a robot to the screen device
GraphicsEnvironment environment
= GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice screen
= environment.getDefaultScreenDevice();
try
{
Robot robot = new Robot(screen);
run(robot);
}
catch (AWTException exception)
{
System.err.println("Can't construct robot.");
}
}
/**
Runs a sample test procedure
@param robot the robot attached to the screen device
*/
public static void run(Robot robot)
{
// simulate a space bar press
robot.keyPress(' ');
robot.keyRelease(' ');
// simulate a tab key followed by a space
robot.delay(2000);
robot.keyPress(KeyEvent.VK_TAB);
robot.keyRelease(KeyEvent.VK_TAB);
robot.keyPress(' ');
robot.keyRelease(' ');
// simulate a mouse click over the rightmost button
robot.delay(2000);
robot.mouseMove(200, 50);
robot.mousePress(InputEvent.BUTTON1_MASK);
robot.mouseRelease(InputEvent.BUTTON1_MASK);
// capture the screen and show the resulting image
robot.delay(2000);
BufferedImage image = robot.createScreenCapture(
new Rectangle(0, 0, 400, 300));
ImageFrame frame = new ImageFrame(image);
frame.show();
}
}
/**
A frame to display a captured image
*/
class ImageFrame extends JFrame
{
/**
@param image the image to display
*/
public ImageFrame(Image image)
{
setTitle("Capture");
setSize(WIDTH, HEIGHT);
Container contentPane = getContentPane();
JLabel label = new JLabel(new ImageIcon(image));
contentPane.add(label);
}
public static final int WIDTH = 450;
public static final int HEIGHT = 350;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -