Sure... it's pretty easy... I once wanted to make a made a little
applet that took screen captures and sent them back to the server...
This app grabs the screen, saves it to a file, and shows then displays it.
/*******************************************************************************
* Copyright (c) 2000, 2003 Stanford University School of Medicine
*
http://med.stanford.edu/irt All rights reserved. Created: Jun 11, 2004
******************************************************************************/
import java.awt.AWTException;
import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import com.sun.image.codec.jpeg.ImageFormatException;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
/**
* @author Philip Constantinou ScreenShare TODO Create class documentation
*/
public class ScreenShare {
/**
*
*/
public ScreenShare() {
super();
// TODO Auto-generated constructor stub
}
public void captureScreen(Rectangle area, FileOutputStream stream)
throws AWTException, ImageFormatException, IOException {
Robot robot = new Robot();
BufferedImage capture = robot.createScreenCapture(area);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(stream);
encoder.encode(capture);
stream.flush();
stream.close();
}
public static void main(
String[] args) {
try {
ScreenShare ss = new ScreenShare();
JFileChooser chooser = new JFileChooser();
chooser.showSaveDialog(null);
File file = chooser.getSelectedFile();
Dimension dim = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
ss.captureScreen(new Rectangle(0, 0, dim.width, dim.height),
new FileOutputStream(file));
JFrame frame = new JFrame();
frame.setContentPane(new JButton(new ImageIcon(file.toURL())));
frame.pack();
frame.show();
frame.addWindowListener(new WindowAdapter() {
public void windowClosed(WindowEvent e) {
System.exit(1);
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
}