希望多多交流。8-)
package com.borland.samples.welcome;
/**
* title:
* description:
* copyright: copyright (c) 2001
* company:
* @author
* @version 1.0
*/
import java.awt.*;
import java.awt.image.*;
import com.sun.image.codec.jpeg.*;
class imagecanvas extends canvas{
private image image;
private dimension prefsize;
public imagecanvas(image image){
this.image = image;
calculatepreferredsize();
}
public void setimage(image image){
this.image = image;
calculatepreferredsize();
repaint();
}
private void calculatepreferredsize(){
prefsize = new dimension(image.getwidth(this),image.getheight(this));
system.out.println(image.getwidth(this));
setsize(prefsize);
}
public dimension getpreferredsize() {
return prefsize;
}
public dimension getminimumsize() {
return prefsize;
}
public void update(graphics g){
paint(g);
}
public void paint(graphics g){
g.drawimage(image,0,0,null);
}
}
class imageutils{
public static image getscreenimage(){
robot robot;
try {
robot = new robot();
}catch(exception e) {
throw new runtimeexception("unable to construct robot");
}
dimension screendims =toolkit.getdefaulttoolkit().getscreensize();
image screen =robot.createscreencapture(new rectangle(450,350,screendims.width,screendims.height)).getscaledinstance(400,300,image.scale_smooth);
mediatracker tracker =new mediatracker(new label());
tracker.addimage(screen,1);
try {
tracker.waitforid(0);
}catch(interruptedexception e) { /** ... */ }
return screen;
}
}
public class screencapture extends frame{
private imagecanvas canvas =new imagecanvas(imageutils.getscreenimage());
public screencapture(){
add(canvas);
setsize(400,300);
setvisible(true);
thread imagethread =new updatethread();
imagethread.setdaemon(true);
imagethread.start();
}
class updatethread extends thread{
public void run(){
while(true){
try {
thread.currentthread().sleep(1000);
}
catch (exception ex) {
}
canvas.setimage(imageutils.getscreenimage());
validate();
}
}
}
public static void main(string[] args){
new screencapture();
}
}
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!


