Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Java > java截屏的代码
【标  题】:java截屏的代码
【关键字】:java
【来  源】:http://www.cublog.cn/u/11456/showart.php?id=172771

java截屏的代码

Your Ad Here

import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;

import javax.imageio.ImageIO;

/*******************************************************************
 * 该JavaBean可以直接在其他Java应用程序中调用,实现屏幕的"拍照"
 * This JavaBean is used to snapshot the GUI in a
 * Java application! You can embeded
 * it in to your java application source code, and us
 * it to snapshot the right GUI of the application
 * @see javax.ImageIO
 * @author liluqun ([email]liluqun@263.net[/email])
 * @version 1.0
 * http://community.csdn.net/Expert/topic/4844/4844995.xml?temp=.2917292
 *****************************************************/

public class GuiCamera
{
    private String fileName; //文件的前缀
    private String defaultName = "GuiCamera";
    static int serialNum=0;
    private String imageFormat; //图像文件的格式
    private String defaultImageFormat="png";
    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();

    /****************************************************************
     * 默认的文件前缀为GuiCamera,文件格式为PNG格式
     * The default construct will use the default
     * Image file surname "GuiCamera",
     * and default image format "png"
     ****************************************************************/
    public GuiCamera() {
      fileName = defaultName;
      imageFormat=defaultImageFormat;

    }

    /****************************************************************
     * @param s the surname of the snapshot file
     * @param format the format of the  image file,
     * it can be "jpg" or "png"
     * 本构造支持JPG和PNG文件的存储
     ****************************************************************/
    public GuiCamera(String s,String format) {

      fileName = s;
      imageFormat=format;
    }

    /****************************************************************
     * 对屏幕进行拍照
     * snapShot the Gui once
     ****************************************************************/
    public void snapShot() {

      try {
      //拷贝屏幕到一个BufferedImage对象screenshot
        BufferedImage screenshot = (new Robot()).createScreenCapture(new
            Rectangle(0, 0, (int) d.getWidth(), (int) d.getHeight()));
        serialNum++;
        //根据文件前缀变量和文件格式变量,自动生成文件名
        String name=fileName+String.valueOf(serialNum)+"."+imageFormat;
        File f = new File(name);
        System.out.print("Save File "+name);
      //将screenshot对象写入图像文件
        ImageIO.write(screenshot, imageFormat, f);
        System.out.print("..Finished!\n");
      }
      catch (Exception ex) {
        System.out.println(ex);
      }
    }

    public static void main(String[] args)
    {
        GuiCamera cam= new GuiCamera("d:\\Hello", "png");//

        cam.snapShot();
    }
}

初学者指南??JAVA常用类的使用方法:【上一篇】
JAVA程序员面试之《葵花宝典》[转]:【下一篇】
【相关文章】
  • 初学者指南??JAVA常用类的使用方法
  • JAVA高手的基础素养
  • Java 1.5 的静态导入特性
  • Java值传递
  • Java类的属性
  • javascript 对文本框的限制
  • Javascript 判断日期 ValidDate 函数
  • FireFox 如何用Javascript 修改状态栏status
  • 比较好的Java 网站
  • 简单层RPC应用的Java实现
  • 【随机文章】
  • Server refused to allocate pty
  • 在状态条中显示鼠标的设备坐标与逻辑坐标
  • asp性能测试第二部分(转)(四)
  • Photoshop 润饰图像(一)润饰战略
  • AcpExercise205-4.mixal
  • django 0.95修改了Auth模块
  • 调试ASP服务端的组件技术
  • 一张让你看了立刻忍不住笑的图片
  • debian上简单的nat实现(snat)
  • 要怎么学习编程?
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.