基于Java的qq截图工具(毕业设计含源码)

简介: 基于Java的qq截图工具(毕业设计含源码)

摘要

当今时代是飞速发展的信息时代,人们在对信息的处理中对图像的处理量与日俱增,这一点在文档人员上显得非常突出。

当今时代是飞速发展的信息时代,人们在对信息的处理中对图像的处理量与日俱增,这一点在文档人员上显得非常突出。

本软件采用Java语言进行模拟qq截图功能,获取屏幕方式灵活,可以获取指定的屏幕,并且可以对获取到的截图进行存储,编辑(添加文字)等操作,对这些操作设置了自定义热键。该软件主要有捕获光标功能,可以指定截取屏幕的区域。软件具有捕捉光标,可以随着鼠标的移动获取屏幕区域,为之后的存储和编辑提供前置条件。图片可以自命名,获取到的截图可以依据当前系统时间进行命名,也可以通过模板(文件名)进行命名,拥有自命名功能。获取到的截图可以在窗口中央位置进行预览,并且可以指定存储区域将截图用bmp,jpeg,png(静态), gif(动态)其中的某一种图像格式将其存储,拥有预览和存储功能。可以直接将获取到的截图复制到剪切板中,之后可以从剪切板中粘贴到word等文档中。多层菜单栏,可以获取一到多个截图,并以多个界面显示出来,拥有层叠功能。可以通过编辑为截图添加文字,为截图添加一些描述信息之后仍可以将截图存储,用户有编辑功能。

展望未来,为了更方便的获取信息,可以将此截图工具进行扩充,添加一些其他功能,比如可以添加画笔,进行涂鸦。

关键词:截图;存储;编辑

qq screenshots tools based on Java

Abstract

Our age is the rapid development of information era, people in the handling of information processing of the images is growing, it appears very prominent on the document personnel.


The software adopting JAVA imitates QQ screenshot, which can obtain designed screens and flexible to achieve it, as well as store and edit (adding words).Besides, user-defined not keys are set to help operate it. The software can capture cursor and move to capture screen area following the mouse which can provide preconditions to store and edit. The software has the ability to capture the cursor, which allows the cursor to be moved to the screen area, providing preconditions for subsequent storage and editing. The photo can be named itself and captured photos can be named the templates(document name). Captured photos can be previewed in the center of chat window and stored in designed position in the from of bmp, jpg, PNG, gif. In the short,it can be previewed and stored. The captured photos can be copied to clipboard then pasted to documents.   Multilayer menu bar can capture multiple photos and be showed by various interface.  It can add words to captured photos by editing and can be stored. After adding some descriptive information. It can be edited.

Looking forward to the future, in order to more convenient access to information, you can use this screenshot tool to expand, add some other functions, such as can add brush, for graffiti.

Key words: capture; Storage; The editor

1. 绪论

截图,就是绝对的记录计算机某一的区域画面,以图片的方式进行存储,供人们使用,按照个人的需要选择其中的某个片段将其保存下来,并且截取到的屏幕与你眼睛所看到的内容一模一样,根据需求可以保存下来自己使用,或者发送给其他人一同使用该截图。

截图经过电脑获取的能呈现在显示屏幕以及别的液晶设施上的可观察图像。一般来说,截图可以使用计算机本身自带的或者某些程序附带的截图小程序如qq截取,当然也有某些特定的截图工具可以进行截图如FastStone Capture8.2,同时相机拍摄也可以达到一些效果。截图也和某些事物相似,也有动静之分,静态截图能够生成一个像素文件,如以.bmp,.png,.jpg为后缀的文件。动态截图生成一个动态文件,如以.gif为后缀的文件。截图常常用来展示某一时间,某一空间下的各个元素之间的状态,以及各种游戏的每个精心的辉宏的场景,当然也为了清晰的传达当时想要表达的意思。

1.1课题背景

当今时代是飞速发展的信息时代,人们在对信息的处理中对图像的处理量与日俱增,这一点在文档人员上显得非常突出。不管你是在qq聊天还是在办公室里执行文档制作,都会时不时的截取一张或两张甚至更多的图片作为信息进行处理、进行编辑。高效的工作已经成为社会主题,为了提高生活节奏和工作效率,我们可以使用一些截图工具来处理一些复杂的文档。截图工具能够截图,存储,拷贝,可以帮我们改善生活,提高工作效率,我们生活中的一些问题可以通过它来解决。常用的截图方法有:各种浏览器自带的截图,某些聊天工具自带的截图,FastStone Capture8.2等专用截图工具截图,计算机操作系统自身附带的截图小软件截图,但这些方法都有一些这样或那样的局限性,这样,这款精致高效的、即学即用的Java截图软件就能够满足这方面客户需求。

1.2课题研究内容

以简单易操作为出发点,设计出这款单机版的截图工具,获取屏幕灵活,可以随机获取屏幕任意区域并且可以对获取到的截图进行存储,编辑(添加文字)等操作,对这些操作设置了自定义热键。该软件主要有捕获光标功能,可以指定截取屏幕的区域。

图片可以自命名,获取到的截图可以依据当前系统时间进行命名,也可以通过模板(文件名)进行命名,拥有自命名功能。

获取到的截图可以在窗口中央位置进行预览,并且可以指定存储位置将截图用bmp,jpeg,png等(静态), gif(动态)其中的某一种图像格式将其存储,拥有预览和存储功能。

多层菜单栏,可以获取一到多个截图,并以多个界面显示出来,拥有层叠功能。

可以通过编辑为截图添加文字,为截图添加一些描述信息之后仍可以将截图存储,用户有编辑功能。

2.可行性分析及开发环境的选择

2.1可行性分析

进行项目的可行性分析,就必须得结合多方面的知识以及常识,并将它们与即将进行的项目进行比较,从而将项目的至关重要的内容和相互呼应的条件,如社会的需要、提供各种物资的数量、各种方向建设的范围、抱有特色的目标、需求设备类型的选择、自然和人为环境的影响、项目启动所需的资金筹集、最终是否能够经济上获取极大的收入,从科学能力、社会发展、项目设计等众多方向想大量有关工作人员进行咨询,在此基础上展开对项目的仔仔细细的专研,以保证项目的进一步实施,并且结合多方面的资料,对项目给出详细的方案,当然也必须将收益进行预估,必须保证项目的收入满足成本的输出(如财务方面是否得到保证,经济是否能够得到大幅度的增长,社会环境是否有巨大的波动),然后为该项目提出值得放心的投资和尽心尽力的进行建设的宝贵建议,提供非常合理,说服力强的理论上的证据给软件项目进行方针的能够在方方面面进行合理处理的系统分析。可行性分析必须具备一些特征,比如:(1)能够大体的预估收益的大小;(2)能够公平的进行分析与决断;(3)能够保证项目进行的通畅;(4)具有非常可观的理论依据。

可行性研究的一般要求:进行可行性分析与设计往小了说,对于每个完整的项目建设与完善有着必不可少的帮助,往大了说,对中国的社会经济的进一步发展起着非常重要的推动作用,在进行可行性分析与研究的工作中为了充分的保证并维护各个环节是否有理论客观性、绝对公正性和社会科学性,尽最大的可能预防错误的产生和缺失关键数据,因此进行可行性分析与研究工作,就要求:(1)第一站在绝对公正的角度开展研究调查,提前收集相关的资料便于工作的展开。客观正确的对收集到的资料,按照社会上的实际规定从而进行相对的比较公正的定义,肯定不虚假地将中国社会经济发展的非主观规律通俗易懂的展现给大众,进行信息的研究讨论以及进行专业的,有理有据的分析,得出结论(项目能否继续进行下去)。(2)可行性的分析和研究的有关内容的专用调研层次不得不符合国家的多定义的准则,设计的主体必须是完整的,不可有缺失的,尽最大的能力去获取非常丰富的信息文档来进行调研,巧妙的避开胡乱瞎写,只有形式无内容。

2.1.1技术可行性

Browser(浏览器)/Server(服务器)结构,简称B/S结构,Java语言以及网络技术是截图工具的主要技术,这些技术都是目前常用的技术,很容易找到相应的工具。因此,对于此系统,技术上没有麻烦的问题,并且维护和操作也较为方便。

2.1.2经济可行性

截图工具对硬件方面没有硬性要求,且这个项目是我们自行开发,成本几乎可以不计,后期维护也不需要大量的费用。

2.1.3法律可行性

eclipse的是一个开源的,免费的软件,代码同样是开放的,并且此设计并不用来营利,是自己设计开发的,所以不会引发责任以及侵权问题,满足法律可行性。

2.1.4可行性结论

由上述可得,不管在上述哪方面都为可行的,要求也不是很高,因此,此系统是满足开发的可行性的。

2.2运行环境的选择

此设计对环境没有硬性要求,对计算机也没有过高的要求,个人、学校、企业均可以使用。在Windows系统或者Linux系统下均可使用(但注意版本问题),操作,维护以及用户使用均很方便。

由于系统本身规模并不大,不需要多台计算机,只需一台即可,使用过程中不收取任何费用,成本不高,用户使用只需登录即可。

2.3开发工具的选择

本项目的开发过程中语言选择java语言,软件选择eclipse,通过这两项来设计此项目。其中,eclipse这款软件的设计环境是开源的、免费的,这个环境在进行java开发时能够拓宽范围的。对于它自己来说,一个宽泛的大体架构以及某些特定的服务组成了eclipse,各种各样的插件以及大量的组件相互结合,统一起来就组成了eclipse的设计环境。当然这有必要提一提:eclipse它自己自带了一个比较规范的可以当作准则的collection,可以将所有插件以及组件储存起来,最为典型的就是java development kit。

eclipse是非常有名气的,因为它作为设计环境是是集合了许多的环境后形成的可供多个平台使用。刚开始的设计语言以java为主,在之后的发展中为了能够在计算机中使用其他语言[如c语言],将在eclipse中添加各种不同的插件和组件,从而达到这个目的。eclipse它自己作为平台本质上仅仅是一个范围较宽的架构,eclipse里的中的种种功能是通过向其内部添加数量较大的多种多样的插件加上多个组件来实现的,相比于某些相对笨拙的integrated driver electronics软件显著的特点是拥有非常好的灵活性。越来越多的软件开发商是用eclipse研发只属于他们自己的其他人不能使用的integrated driver electronics。

eclipse 刚开始是由加拿大的Optimization Technology Inc公司和International Business Machines Corporation公司两个公司合力将其integrated driver electronics整合创建的,在1999.04开始进行设计eclipse软件。eclipse最基本的内容是由International Business Machines Corporation公司提供的,这时它的主要内容包括platform、joint development team以及project director electronics。这个eclipse项目的启动由International Business Machines Corporation公司开始,形成了一个非常巨大的联盟即eclipse这个项目的发展,参与到这个项目研发的公司总机多达150多家,其中典型的公司有:赛贝斯公司、宝蓝公司及红帽公司等。eclipse是开源的免费的,不会收取任何费用的项目,便于每个用户使用,因而每个人都能够轻而易举的下载到,同时在了解这写相关的知识的基础上研发属于他们自己的,满足自身需求的各种插件和组件,也就是因为这个原因,它受到越来越多的人关注。之后又有许多大型公司加入了此项目的开发,其中典型的有oracle公司,eclipse是为了可以将任何语言集成在一起,实现跨平台,用户仅仅通过下载插件即可使用所需要用到的语言。

Java语言有许多特性,比如:平台无关性,多线程技术以及安全可靠性。

  1. 平台无关:支持多变的网络环境。为了保证程序能够不加任何修改运行于网络上的任何计算机,而不管计算机是什么种类,什么平台,这样就极大减轻了系统管理员的工作;
  2. 支持网络化嵌入式设备。Java的平台无关性可以简化系统管理任务。无论是哪个网络的管理员,它只需关注程序本身即可。
  3. 多线程:在计算机软硬件上同时处理一个以及n个线程并发进行的技术。电脑因为硬件做后盾支持所以可以在某一时间段内,处理一个或者n个线程,拥有多线程机制,从而让得计算机对线程的运行过程控制能力得到飞跃的质的飞跃。这里列举几个具有高性能处理机制的处理机:(a)相互对照的 (b)多个关键的 (c)纳米级的 (d)多个线程同时的。
  4. 安全可靠:java有比较高的可靠性,因为其刚开始始为了设计消费类的电子产品。c++随时间的推移加上众多的努力研究就得到了java,但是它比c++可靠,能够避免大量的错误编程。主要使用java的开发是在网络应用方面,所以需要很高的安全性。如果java语言不能够严格的满足很高的安全性,那么将计算机联网进行资料共享,程序共享就有非常高的危险指数,很容易被木马病毒攻击系统,这对于所有用户来说都一样。java能够通过自己的预防木马等病毒机制对系统以及软件进行保护,能够强有力的将木马病毒程序阻拦在系统外部,形成一种保卫机制,为计算机的安全提供了强有力的保证。

2.4 B/S结构

Browser/Server,当然为了方便,简化其名称为B/S,是网络潮流的带领下演化出来的比较时尚的,较为受欢迎的web架构。用户终端离不开的,广受大众欢迎的是能够连接Internet的浏览器。用户终端被集中在一起进行管理,所有重要的需求实现必须放在服务器端,使系统以及各种软件设计、运行和使用简单方便,清晰明了。客户机上只要安装一个浏览器,如谷歌浏览器或火狐浏览器,将oracle,mysql数据库安装到服务器端。各种浏览器与数据库之间的交互数据是通过网络服务进行的。

B/S的作用:因为C/S结构有着各种各样的问题,所以人们提出了基于C/S结构基础的新的三层结构系统应用结构,即B/S结构。B/S随着Internet的日新月异更新框架下,基于C/S架构的基础,加上众人不同的见解形成的一个新的架构。总体上来说,B/S结构同样是C/S结构中的一种特殊结构,它可以说是由经典的二层C/S结构经过实践发展得来的三层C/S结构一种新型结构在网络上使用的特殊典例。

B/S结构将日新月异的不断发展的网络浏览器技术纳入了自己的内容中:通过将浏览器内部的许多不同的脚本语言和网络化多媒体对象技术结合起来,仅仅使用普通浏览器就可以实现的强大功能,拒绝曾经的繁琐不简洁的软件,大大的降低了开发的开销。

B/S结构最突出的优点:不需要任何专用的软件就能够在任何场所进行运行操作,只需有一台计算机.然后连上网络,就可以进行操作,客不需要在客户端安装任何东西、也不需要进行维护。系统的扩展非常容易。

B/S架构特点:

(1)维护和升级方式简单。如果软件是B/S框架的软件,那么只需在服务器进行管理,客户端不需要进行维护,因为客户端仅仅是浏览器,不能维护。

(2)缩减开支,拓宽选择方向。若软件是B/S框架,那么管理这个软件,仅仅将其安装在服务器(linux系统),这样就有很高的安全性。

(3)服务器在运行时产生的数据负荷相对比较严重。B/S框架所管理的软件,用户界面自己做的事情比较少,大多数都是服务器端在完成,当然此过程的完成必须使用万维网。

3.系统需求分析

需求分析,是在计算机系统中创建一个新的项目或者将计算机里现在存在的项目时进行修改时描述新项目的概念,目标:涵盖范围和实现功能时所需要进行的准备工作。在软件项目设计工程中,需求分析是必不可少的至关重要的过程之一。顾客有哪些具体需求是在这个过程中,准确无误的传递给分析系统的人员和软件设计师。因为他们必须在确定了用户的需求后,才能够从用户的需求中分析、设计、得到适合解决方案来适应新系统。明确用户需求的软件功能是软件工程中需求分析的工作。

需求分析的任务对现实世界中即将要进行操作的对象进行非常仔细认真的调查,并且保证非常了解原来系统在运行时的具体状态,准确的把握住用户的种种需要的功能及意见,之后设计基于原来系统基础的新系统功能。当然也需要明确系统需要的其他种种需求,因为软件的基本需求不单单只是功能需求,基本需求还包括其他几方面,一般来说,系统的设计与实现必须满足以下几个基本需求:(1)效果需要;(2)性能供应(3)能够上市与有保障(4)解决异常(5)协接的处理(6)限制(7)反方向的处理(8)日后有几率产生的需要。

需求分析步骤: ⑴首先调查组织机构情况⑵然后调查各部门的业务活动情况⑶协助用户明确对新系统的各种要求⑷确定新系统的边界⑸分析系统功能⑹分析系统数据⑺编写分析报告。

3.1业务需求

能够实现对屏幕的随机截取,复制,保存以及添加文字等操作,便于用户对数据的处理。

3.2用户需求

用户给设计者提出的软件上的需求,是对产品的的要求。

3.3性能需求

指定的界面效果为系统效果,界面清晰,通俗易懂,操作简洁,用户使用时得心应

........

具体内容自行下载:

链接:https://pan.baidu.com/s/15yyQo3JymGVdNMQbqSkxdQ?pwd=z1j5

提取码:z1j5


目录
相关文章
|
1月前
|
XML Java 编译器
Java注解的底层源码剖析与技术认识
Java注解(Annotation)是Java 5引入的一种新特性,它提供了一种在代码中添加元数据(Metadata)的方式。注解本身并不是代码的一部分,它们不会直接影响代码的执行,但可以在编译、类加载和运行时被读取和处理。注解为开发者提供了一种以非侵入性的方式为代码提供额外信息的手段,这些信息可以用于生成文档、编译时检查、运行时处理等。
71 7
|
20天前
|
人工智能 自然语言处理 Java
FastExcel:开源的 JAVA 解析 Excel 工具,集成 AI 通过自然语言处理 Excel 文件,完全兼容 EasyExcel
FastExcel 是一款基于 Java 的高性能 Excel 处理工具,专注于优化大规模数据处理,提供简洁易用的 API 和流式操作能力,支持从 EasyExcel 无缝迁移。
95 9
FastExcel:开源的 JAVA 解析 Excel 工具,集成 AI 通过自然语言处理 Excel 文件,完全兼容 EasyExcel
|
12天前
|
监控 JavaScript 数据可视化
建筑施工一体化信息管理平台源码,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
智慧工地云平台是专为建筑施工领域打造的一体化信息管理平台,利用大数据、云计算、物联网等技术,实现施工区域各系统数据汇总与可视化管理。平台涵盖人员、设备、物料、环境等关键因素的实时监控与数据分析,提供远程指挥、决策支持等功能,提升工作效率,促进产业信息化发展。系统由PC端、APP移动端及项目、监管、数据屏三大平台组成,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
|
1月前
|
Java 开发者 微服务
Spring Boot 入门:简化 Java Web 开发的强大工具
Spring Boot 是一个开源的 Java 基础框架,用于创建独立、生产级别的基于Spring框架的应用程序。它旨在简化Spring应用的初始搭建以及开发过程。
77 6
Spring Boot 入门:简化 Java Web 开发的强大工具
|
1月前
|
存储 JavaScript 前端开发
基于 SpringBoot 和 Vue 开发校园点餐订餐外卖跑腿Java源码
一个非常实用的校园外卖系统,基于 SpringBoot 和 Vue 的开发。这一系统源于黑马的外卖案例项目 经过站长的进一步改进和优化,提供了更丰富的功能和更高的可用性。 这个项目的架构设计非常有趣。虽然它采用了SpringBoot和Vue的组合,但并不是一个完全分离的项目。 前端视图通过JS的方式引入了Vue和Element UI,既能利用Vue的快速开发优势,
128 13
|
2月前
|
缓存 监控 Java
Java线程池提交任务流程底层源码与源码解析
【11月更文挑战第30天】嘿,各位技术爱好者们,今天咱们来聊聊Java线程池提交任务的底层源码与源码解析。作为一个资深的Java开发者,我相信你一定对线程池并不陌生。线程池作为并发编程中的一大利器,其重要性不言而喻。今天,我将以对话的方式,带你一步步深入线程池的奥秘,从概述到功能点,再到背景和业务点,最后到底层原理和示例,让你对线程池有一个全新的认识。
65 12
|
1月前
|
JavaScript 安全 Java
java版药品不良反应智能监测系统源码,采用SpringBoot、Vue、MySQL技术开发
基于B/S架构,采用Java、SpringBoot、Vue、MySQL等技术自主研发的ADR智能监测系统,适用于三甲医院,支持二次开发。该系统能自动监测全院患者药物不良反应,通过移动端和PC端实时反馈,提升用药安全。系统涵盖规则管理、监测报告、系统管理三大模块,确保精准、高效地处理ADR事件。
|
1月前
|
人工智能 移动开发 安全
家政上门系统用户端、阿姨端源码,java家政管理平台源码
家政上门系统基于互联网技术,整合大数据分析、AI算法和现代通信技术,提供便捷高效的家政服务。涵盖保洁、月嫂、烹饪等多元化服务,支持多终端访问,具备智能匹配、在线支付、订单管理等功能,确保服务透明、安全,适用于家庭生活的各种需求场景,推动家政市场规范化发展。
|
Java 网络安全 数据安全/隐私保护
[Java工具] 邮件发送工具
注册邮箱 去163邮箱(或其他邮箱)注册一个邮箱,并开启SMTP授权码。 程序 需要注意的是,由于阿里云服务器不让使用默认的25端口,所以会出现Windows下测试发送邮件成功,Linux服务器下发送邮件却出错的问题(broke pipe、timeout、can not connect等)。
1771 0