Java实现截图小工具的完整代码(初级代码编程的截图)

网友投稿 398 2022-07-30


目录写在前面效果展示代码展示项目结构设计思路项目测试

写在前面

今天利用java的图形用户界面GUI技术写了一个电脑截图小工具。本程序代码简单,涉及到异常处理,事件处理,图形用户界面等,是初学者练手的好项目。一起来学习吧!

效果展示

代码展示

import javax.imageio.ImageIO;

import javax.swing.*;

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

public class PrintScreen extends JFrame{

PrintScreen(){

this.setTitle("Java屏幕截图小工具");

this.setSize(400,300);

this.setVisible(true);

this.setDefaultCloseOperation(EXIT_ON_CLOSE);

JButton jButton=new JButton("点击截图");

jButton.setSize(120,60);

setLayout(new FlowLayout());

getContentPane().add(jButton);

//为按钮添加监听事件

jButton.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

try {

PrintScreen();

} catch (AWTException | IOException ex) {

throw new RuntimeException(ex);

}

}

});

}

//实现截图功能

public static void PrintScreen() throws AWTException, IOException {

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

int width=(int)screenSize.getWidth();

int height=(int)screenSize.getHeight();

Robot robot=new Robot();

BufferedImage bi=robot.createScreenCapture(new Rectangle(width,height));

ImageIO.write(bi,"png",new File("C:\\Users\\AdmibdvqhDFnistrator\\Desktop","上一张截图.png"));

}

public static void main(String[] args){

PrintScreen printScreen=new PrintScreen();

}

}

项目结构

本程序用于初学者学习,结构简单,所有功能在主类中实现。

设计思路

首先绘制窗口,添加按钮组件,然后为按钮添加监听事件,实现截图功能。新的截图放在桌面,并命名为上一张截图.png。此路径可以根据自己的需求更改。

本程序中异常处理和事件处理是重点,也是Java进阶学习的重要部分,虽然GUI现在并没有很大的市场,甚至很多Java初学者放弃学习GUI技术,但是利用GUI编程的过程对于培养编程兴趣,深入理解Java编程有很大的作用。

本程序还可以进行优化,用于截取不同形状的截图,满足用户的需求。通过添加坐标变量来截取屏幕上所需要的像素点。同时,还可以对这个简易的窗口进行美化。本程序是一个学习Java编程的练手好项目。

项目测试

运行程序,点击截图按钮,在目标文件路径下生成一个命名为“上一张截图.png”的文件,如上图。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java实现屏幕截图工具的代码分享(java实现截图功能)
下一篇:java高级用法之绑定CPU的线程Thread Affinity简介(java多线程cpu)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~