中文编程开发语言工具构件说明:屏幕截取构件的编程操作


屏幕截取

用于截取指定区域的图像。

图 标:

构件类型:不可视

重要属性

l 截取类型

枚举型,设置在截取屏幕时的截取类型。包括:全屏幕、指定区域、活动窗口三种。当全屏幕截取时相当于执行了硬拷屏(PrintScreenSysRq键)功能;指定区域截取则是通过矩形参数属性设置欲截取区域的坐标值截取指定的区域。当截取屏幕中"焦点所在窗口"位图时,可选择"活动窗口"项。

l 矩形参数

对象型,用于设置在指定区域截取时的截取范围。(X1,Y1)表示截取范围的左上角横纵坐标值;(X2,Y2)表示截取范围的右下角横纵坐标值。

例如:设置X1=30、Y1=40、X2=110、Y2=100。表示截取的范围如图1所示。

图1

屏幕左上角横纵坐标为(0,),依照设置结果,凹痕的范围即指定区域范围。

l 缓存方式

枚举型,当屏幕截取时,位图临时存放到缓存中。它的存储方式分为:替换、追加两种。

替换:表示新截取的位图将上一幅位图替换。即在缓存中永远只有一幅最新截取的位图。

追加:表示将新截取的位图追加到上一幅位图的后面。并将位图名称按序号加1。如上一幅位图的名称为A01,追加的位图名称为A02、A03......

**技巧:**静态截屏时,适用替换的方式;动态截屏时,需要用到追加方式。所谓静态截屏,即只截屏幕上的一幅静止图案;而动态截屏是截取屏幕上放映的动画或视频。

**注意:**在动态截屏时,位图要尽可能的小,数量尽可能的少。反之,您的内存资源可能承受不起。

l 位图列表

构件型,设置与位图列表构件相链接。屏幕截取构件必须与位图列表构件联用才可以。屏幕截取是利用位图列表来管理缓存中的位图的。

重要方法

l 截取一帧

执行此方法时,截取屏幕上一帧图像到缓存中。

实例:在开发项目中,素材的重要性是不言而喻的。但往往我们不是全面照搬而是引用一个局部,譬如一个局部动画。下面的例子将帮您解决这个问题,项目名称为动态截屏。

构件组成也很简单,屏幕截取、位图列表、事件发生器、两个普通按钮。

项目设计时期设置:屏幕截取类型为"指定区域";矩形参数分别为"30、、110、100";缓存方式为"追加";在位图列表属性中指定与位图列表构件相链接;事件发生器的允许属性为"假";间隔时间为"200"。(也就是一秒钟截取五次。如果不设置该项,默认为一秒钟截一次,动画可能失帧。)

项目运行时期:当鼠标单击普通按钮1时。将事件发生器允许属性设为"真"。事件设置如图2所示

图2

当事件发生器定时执行时,截取屏幕上的图像。事件设置如图3所示。

图3

当鼠标单击普通按钮2时,将事件发生器允许属性设为"假",并保存当前截取的一组图像。事件设置如图4所示。

图4

图像将以何种名称,存放在何处呢?这是截止到目前您最想知道的答案。很简单,如果您按照上述步骤做了,那么系统会自动将这组位图的名称定义为ABC#0000、ABC#0001、ABC#0002......而它们将自动存储在您的项目所在目录下。好了,选好素材可以开始运行了。

中文编程系统化教程,不需英语基础。学习链接
https://edu.csdn.net/course/detail/39036
相关推荐
_poplar_3 分钟前
08.5【C++ 初阶】实现一个相对完整的日期类--附带源码
c语言·开发语言·数据结构·c++·vscode·算法·vim
意疏31 分钟前
探秘C语言:数据在内存中的存储机制详解
c语言·开发语言
anlogic9 小时前
Java基础 8.18
java·开发语言
沐知全栈开发10 小时前
WebForms XML 文件详解
开发语言
阿巴~阿巴~11 小时前
冒泡排序算法
c语言·开发语言·算法·排序算法
黑客影儿11 小时前
Kali Linux 环境中的系统配置文件与用户配置文件大全
linux·运维·程序人生·安全·网络安全·系统安全·学习方法
看到我,请让我去学习12 小时前
QT - QT开发进阶合集
开发语言·qt
weixin_3077791312 小时前
VS Code配置MinGW64编译SQLite3库
开发语言·数据库·c++·vscode·算法
一瞬祈望12 小时前
Visual Studio Code 基础设置指南
vscode·编辑器
励志不掉头发的内向程序员13 小时前
STL库——string(类函数学习)
开发语言·c++