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 (liluqun@263.net)
* @version 1.0
*
*****************************************************/
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:\\", "jpg");//
cam.snapShot();
}
}
分享到:
相关推荐
首先,我们要理解Java中实现屏幕监控的关键技术。这通常涉及到Java的图形用户界面(GUI)组件和图像处理库。Java提供了丰富的API,如Java AWT(Abstract Window Toolkit)和Swing,用于创建和操作图形界面。对于屏幕...
在Java编程环境中,实现屏幕截图是一项实用的技术,广泛应用于各种应用场景,如屏幕录像、远程控制、游戏辅助等。本文将详细讲解如何使用Java来完成这一功能,并基于提供的`screenChort.java`源代码进行解析。 首先...
用java写了个录视频的小程序, 录制后文件默认保存在系统临时目录, 录制视频和麦克风声音, 播放时回车键进入全屏, esc退出全屏, 希望能对有兴趣的朋友提供参考 已重写新版原生java生成FLV格式视频文件 请看...
通过java实现鼠标移动以及点击屏幕的代码,通过简单的java代码简单实现这两个功能。通过java实现鼠标移动以及点击屏幕的代码,通过简单的java代码简单实现这两个功能。
本项目“java远程屏幕共享程序(局域网)”就是这样一个实现,它采用Java编程语言,提供了客户端(Client.jar)和服务器端(Server.jar)两个组成部分,适合于局域网内的设备间进行屏幕共享。以下将详细解析这个项目...
这个特定的项目是基于JAVA实现的屏幕共享程序,它提供了在局域网内进行屏幕共享的功能。以下是对该程序及其相关技术的详细解释: 首先,让我们关注核心编程语言——JAVA。JAVA是一种广泛使用的面向对象的编程语言,...
标签“源码”和“工具”暗示了这个压缩包可能包含了实现屏幕监控功能的Java源代码以及一个或多个辅助工具。源码对于开发者来说是非常宝贵的,因为它能让他们深入理解底层工作原理,并有可能根据自己的需求进行定制和...
java的robot类实现屏幕截图,java的robot类实现屏幕截图。
总结来说,通过Java Socket实现屏幕网络监控需要掌握以下知识点: 1. Java Socket编程基础:包括ServerSocket和Socket的使用,以及连接建立和断开。 2. 图像处理:如何捕获屏幕、编码和解码图像,以及选择合适的...
在Java编程语言中,实现屏幕截图是一项常见的任务,尤其在自动化测试、远程桌面协作或创建教学软件时。本文将深入探讨如何使用Java实现这一功能,同时提供相关代码示例。 首先,我们需要理解Java中用于图形界面操作...
说明:程序由Java语言实现,功能包括全屏截图、自定义截图,在自定义状态下:在选区中 右键 -> 取消选区 在选区中 双击 -> 保存选区 在选区外 右键 -> 清除图像 程序中窗口截图部分暂时没有实现。 本程序是学习之...
在本专题训练作业中,我们将深入探讨如何使用Java语言实现一个远程屏幕监控系统。这个系统允许用户通过网络实时查看和控制远程计算机的屏幕,从而在各种应用场景中提供远程协助、远程管理或教育辅助等功能。这一技术...
在Java编程领域,实现"Java网络屏幕监控(把客户端屏幕截图实时发送到主机端)"是一项技术挑战,涉及到网络通信、图像处理以及文件传输等多个知识点。在这个项目中,`WnetWScreenRecorder.java`作为客户端负责捕获并...
import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; public class Server { public Server() { } public void listen() throws IOException { ServerSocket server = ...
本篇将详细解析一个由Java编写的屏幕分享软件源码,帮助读者理解其背后的实现原理和技术细节。 1. **Java基础** Java是一种跨平台的编程语言,以其“一次编写,到处运行”的特性闻名。在这个屏幕分享软件中,Java...
在Java编程环境中,实现软件锁屏功能涉及到对操作系统级别的交互以及图形用户界面(GUI)的控制。虽然Java标准库并不直接提供锁屏API,但我们可以借助于Java的JNI(Java Native Interface)或者第三方库来实现这个...
总的来说,Java开发的屏幕照相机是一款利用Java的跨平台特性和丰富的库资源实现的高效工具,具有隐形运行和屏幕监控功能,适用于多种应用场景。其开发涉及GUI设计、图像处理、文件操作以及网络通信等多个技术领域,...
在Java编程环境中,实现QQ屏幕截图功能涉及到多个技术点,包括图形用户界面(GUI)的创建、屏幕捕获、图像处理以及文件保存等。下面将详细解释这些知识点。 1. **Java AWT/Swing库**: Java提供了AWT(Abstract Window...
java毕业设计——基于java的QQ屏幕截图工具的设计与实现(论文+答辩PPT+源代码+数据库).zip java毕业设计——基于java的QQ屏幕截图工具的设计与实现(论文+答辩PPT+源代码+数据库).zip java毕业设计——基于java的QQ...
通过组合这两个类,可以实现屏幕监控和机器人操作。 二、Java实现人工智能化屏幕监控窗口的实现步骤 1. 创建一个JFrame窗口,用于显示屏幕监控的结果。 2. 使用Toolkit类获取屏幕的大小,并创建一个矩形区域,用于...