`
daimojingdeyu
  • 浏览: 274904 次
  • 性别: Icon_minigender_1
  • 来自: 山东
社区版块
存档分类
最新评论

状态模式-实现屏幕截取程序

阅读更多
生病中,在家无事,将以前写的抓屏程序丰富了一下。

支持了选择区域后,对选择区域的修改,向八个方向的大小调整和移动。

新增的功能使用状态模式实现比较的方便,程序有两种状态:1、区域选择状态,这个时候可以对整个区域进行鼠标拖动进行区域的选择。对鼠标的拖动和右键点击感兴趣。
2、区域修改状态,完成8个方向的大小调整。对鼠标的点击、拖动、右键都感兴趣。

原来的主程序不再处理鼠标事件,而是讲相应事件的功能委托给当前的状态去处理。状态的管理器由状态的基类来完成,没有设计单独的管理类。

程序使用方法:右键单击取消选中区,右键双击退出,左键双击对选中区域的截图进行保存。

附件中是程序的代码,Netbeans的工程
分享到:
评论
3 楼 xchz 2017-11-02  
没想到做的这么完善 
2 楼 daimojingdeyu 2009-07-28  
coredeo 写道
学习了 很强的,谢谢!

1 楼 coredeo 2009-07-27  
学习了 很强的,谢谢!

相关推荐

    计算机软件-商业源码-捕捉屏幕图像,支持全屏 指定区 窗口捕捉.zip

    3. **窗口捕捉**:此模式下,软件能够单独捕捉屏幕上打开的应用程序窗口,而不是整个桌面。这对于分享某个特定应用程序的状态或问题时特别有效。 要实现这些功能,开发者通常会使用编程语言中的图形用户界面(GUI)...

    DELPHI屏幕截图抓屏工具源代码

    标题 "DELPHI屏幕截图抓屏工具源代码" 指的是使用 Delphi 开发的一款用于截取屏幕图像的应用程序的源代码。Delphi 是一种基于 Object Pascal 的集成开发环境(IDE),它提供了丰富的组件库和强大的编程能力,使得...

    adb截取手机屏幕及获取设备信息

    结合易语言,我们可以方便地在易语言程序中实现adb的功能,如截取手机屏幕和获取设备信息,从而提升开发效率和用户体验。在实际使用中,请确保你的设备已经正确连接到电脑,并且开启了USB调试模式,以便adb能够识别...

    屏幕截图专家8.0程序

    区域截图则让用户能够自由选择屏幕上想要截取的部分。这种模式适用于需要突出显示特定内容或避免无关信息的情况。用户可以通过鼠标拖动来划定截图范围,或者利用预设的几何形状(如矩形、圆形等)进行精确选择。 ...

    可配置截图程序(可以截取全屏,按窗口标题/类名截图、对指定区域截图)

    【可配置截图程序】是一种强大的工具,它允许用户根据个人需求设定不同的截图模式,包括全屏截图、基于窗口标题或类名的截图以及自定义区域截图。这种灵活性使得该程序适用于各种场景,如监控、演示、教学或者日常...

    完整版屏幕监视-[被控制端].e.rar

    1. 实时屏幕捕获:该软件能够定期或实时地截取被控制端的屏幕图像,让管理员可以看到用户在做什么。 2. 远程控制:除了查看屏幕,管理员还可以远程操控被控制端的电脑,进行文件管理、程序操作等。 3. 键盘记录:...

    远程控制之图象截取

    此外,游戏开发者也可能利用此技术来实现游戏内的观察者模式,让玩家可以观看其他人的游戏过程。 然而,随着技术的发展,安全问题也随之凸显。远程控制意味着数据的传输,这可能导致敏感信息的泄露。因此,为了保护...

    C/S模式聊天系统

    3. 截屏:提供截取屏幕图像的功能,用户可以快速分享屏幕内容给对方,实现快速的视觉交流。这可能需要用到Windows API来捕获屏幕,并通过编码将图像数据转化为可传输的形式。 4. 语音功能:实现了语音聊天,可能...

    SnagIt(屏幕捕捉程序)V10.0.0.788 绿色便携修正版__Snagit32

    此外,SnagIt还提供定时捕捉功能,可以设置间隔时间自动抓取屏幕,对于监控软件运行状态或者记录时间推移的过程非常实用。 在捕获图片后,SnagIt的强大编辑功能让其脱颖而出。用户可以在内置的编辑器中进行裁剪、...

    PROGRESS程序开发培训文档

    - 除了基本的程序模式外,PROGRESS还支持其他一些模式,如Web应用模式、移动应用模式等。 #### 八、例子 - 为了更好地理解上述概念,可以结合实际的例子进行学习。例如,创建一个简单的库存管理系统,涉及创建表、...

    C# 截屏发送邮件程序.rar

    - **定时发送**:可以扩展程序功能,实现定时截屏并发送邮件,适用于监控系统状态。 - **用户交互**:增加用户界面,让用户选择截图区域、设定邮件接收者等。 综上所述,"C# 截屏发送邮件程序"涉及到的知识点涵盖...

    Windows快捷键大全

    43. **ALT+ENTER** - 将Windows下运行的MSDOS窗口在窗口和全屏幕状态间切换。 - 在DOS窗口中切换显示模式。 44. **PRINTSCREEN** - 将当前屏幕以图像方式拷贝到剪贴板。 - 快速截取整个屏幕。 45. **ALT+PRINT...

    基于Qt的c/s架构的即时聊天通信软件(服务器程序是linux平台下的)

    C/S架构,即客户端/服务器架构,是一种常见的分布式应用程序设计模式,它将应用程序分为两个主要部分:客户端,用户与之交互的部分;服务器端,处理数据和提供服务的部分。Qt是一个流行的跨平台应用开发框架,广泛...

    屏幕取词金山研究,金山词霸手机屏幕取词,Delphi

    3. **屏幕截取**:使用Delphi的GDI或Windows API函数捕获屏幕上的指定区域,如鼠标选中的单词或短语。 4. **识别单词**:将截取的图像数据传递给`XdictGrb.dll`,让其识别出图像中的文字。这可能涉及到OCR(光学...

    ABAPchinese.pdf

    - **类型**:定义程序的运行模式(如独立程序、包含程序、模块池等)。 - **状态**:指示程序的开发状态(如测试、生产等)。 - **应用模块**:指定程序所属的应用模块。 - **开发类**:便于管理同一个系统中的...

    易语言源码易语言屏幕涂鸦源码.rar

    2. **屏幕操作**:屏幕涂鸦涉及到对屏幕的读取和写入,这需要理解易语言中的屏幕操作命令,如获取屏幕尺寸、截取屏幕、在屏幕特定位置绘制等。这些命令通常用于图形用户界面的开发,帮助开发者实现与屏幕交互的功能...

    屏幕捕获软件(屏幕截图)

    总结起来,"红蜻蜓"作为一款强大的屏幕捕获软件,具备多种截图模式,可以满足用户在工作、学习和生活中各种截图需求。Rdfsnap可能是这款软件的截图文件格式,保存了用户的截图结果,方便后续编辑、存储和分享。掌握...

    最好的abap教材(ABAP/4 Introduction)

    - **状态**:开发状态,如 SAP 标准生产程序、客户生产程序、测试程序等。 - **应用模块**:指定程序所属的应用模块。 - **开发类**:用于组织同一系统内的多个程序,如果不属于任何类别,则可以使用 `$TMP`。 - ...

    SM-T705C使用说明书

    其中,屏幕截图功能允许用户截取当前屏幕内容,非常适用于分享信息。 网络连接方面,SM-T705C支持移动数据、WLAN等多种网络接入方式,用户可以利用下载推进器和网络共享等功能进行数据传输。在联网时,应当注意版权...

Global site tag (gtag.js) - Google Analytics