易语言API后台截图源码
系统结构:复制场景位图_,取屏幕句柄_,取设备场景信息_,创建内存场景_,创建设备位图_,选入设备场景_,复制位图_,取设备场景_,置伸缩模式_,删除对象_,释放设备场景_,删除设备场景_,取客户区矩形_,取前台窗口_,取全局场景,printwindow,
======窗口程序集1
| |
| |------ _按钮1_被单击
| |
| |------ _按钮3_被单击
| |
| |------ _按钮2_被单击
| |
| |
======调用的Dll
| |
| |---[dll]------ 复制场景位图_
| |
| |---[dll]------ 取屏幕句柄_
| |
| |---[dll]------ 取设备场景信息_
| |
| |---[dll]------ 创建内存场景_
| |
| |---[dll]------ 创建设备位图_
| |
| |---[dll]------ 选入设备场景_
| |
| |---[dll]------ 复制位图_
| |
| |---[dll]------ 取设备场景_
| |
| |---[dll]------ 置伸缩模式_
| |
| |---[dll]------ 删除对象_
| |
| |---[dll]------ 释放设备场景_
| |
| |---[dll]------ 删除设备场景_
| |
| |---[dll]------ 取客户区矩形_
| |
| |---[dll]------ 取前台窗口_
| |
| |---[dll]------ 取全局场景
| |
| |---[dll]------ printwindow
调用的DLL命令:
.DLL命令 复制场景位图_, 整数型, "gdi32.dll", "BitBlt"
.参数 目标设备场景, 整数型, , hDestDC,目标设备场景
.参数 目标横坐标, 整数型, , x,对目标设备场景中目标矩形左上角位置进行描述的那个点
.参数 目标纵坐标, 整数型, , y,对目标设备场景中目标矩形左上角位置进行描述的那个点
.参数 传输图像宽度, 整数型, , nWidth,欲传输图象的宽度
.参数 传输图像高度, 整数型, , nHeight,欲传输图象的高度
.参数 源设备场景, 整数型, , hSrcDC,源设备场景。如光栅运算未指定源,则应设为0
.参数 源横坐标, 整数型, , xSrc,对源设备场景中源矩形左上角位置进行描述的那个点
.参数 源纵坐标, 整数型, , ySrc,对源设备场景中源矩形左上角位置进行描述的那个点
.参数 光栅运算方式, 整数型, , dwRop,传输过程要执行的光栅运算
.DLL命令 取屏幕句柄_, 整数型, "user32", "GetDesktopWindow"
.DLL命令 取设备场景信息_, 整数型, "gdi32", "GetDeviceCaps"
.参数 设备场景, 整数型
.参数 值, 整数型
.DLL命令 创建内存场景_, 整数型, "Gdi32", "CreateCompatibleDC"
.参数 设备场景句柄, 整数型
.DLL命令 创建设备位图_, 整数型, "gdi32", "CreateCompatibleBitmap"
.参数 设备场景句柄, 整数型
.参数 宽度, 整数型
.参数 高度, 整数型
.DLL命令 选入设备场景_, 整数型, "gdi32.dll", "SelectObject", , SelectObject
.参数 场景句柄, 整数型, , hdc
.参数 对象句柄, 整数型, , hobject
.DLL命令 复制位图_, 整数型, "gdi32.dll", "StretchBlt", , StretchBlt,将一幅位图从一个设备场景复制到另一个。源和目标DC相互间必须兼容。这个函数会在设备场景中定义一个目标矩形,并在位图中定义一个源图象。源矩形会根据需要进行伸缩,以便与目标矩形的大小相符
.参数 目标设备场景句柄, 整数型, , hdc,目标设备场景
.参数 目标横坐标, 整数型, , x,目标矩形左上角的x,y坐标,以逻辑坐标表示
.参数 目标纵坐标, 整数型, , y,目标矩形左上角的x,y坐标,以逻辑坐标表示
.参数 目标宽度, 整数型, , nWidth,目标矩形的宽度和高度,以逻辑坐标表示
.参数 目标高度, 整数型, , nHeight,目标矩形的宽度和高度,以逻辑坐标表示
.参数 源设备场景句柄, 整数型, , hSrcDC,源设备场景。如光栅运算未指定一个源,则这个参数应为零
.参数 源横坐标, 整数型, , xSrc,用源DC的逻辑坐标表示的源矩形左上角位置
.参数 源纵坐标, 整数型, , ySrc,用源DC的逻辑坐标表示的源矩形左上角位置
.参数 源宽度, 整数型, , nSrcWidth,分别指定用逻辑单位(以源DC为基础)传输的一幅图象的宽度和高度。如其中有一个参数的符号(指正负号)与对应的目标参数不符,位图就会在对应的轴上作镜像转换处理
.参数 源高度, 整数型, , nSrcHeight,分别指定用逻辑单位(以源DC为基础)传输的一幅图象的宽度和高度。如其中有一个参数的符号(指正负号)与对应的目标参数不符,位图就会在对应的轴上作镜像转换处理
.参数 光栅运算, 整数型, , dwRop,传输过程中进行的光栅运算。如刷子属于光栅运算的一部分,就使用选入目标DC的刷子
.DLL命令 取设备场景_, 整数型, "user32", "GetDC", , 获取指定窗口的设备场景 指定窗口的设备场景句柄,出错则为0
.参数 窗口的句柄, 整数型, , 将获取其设备场景的窗口的句柄。若为0,则要获取整个屏幕的DC;
.DLL命令 置伸缩模式_, 整数型, "gdi32", "SetStretchBltMode", , 指定StretchBlt 和 StretchDIBits函数的伸缩模式。这种伸缩模式定义了Windows如何对伸缩过程中剔除的扫描线进行控制。对于VB窗体和控件,倘若在API绘图过程中使用这个函数,建议恢复原来的StretchBlt模式 上一次伸缩模式的值,零表示失败
.参数 设备场景句柄, 整数型, , hdc
.参数 伸缩模式, 整数型, , nStretchMode
.DLL命令 删除对象_, 整数型, "gdi32.dll", "DeleteObject", , DeleteObject
.参数 对象句柄, 整数型, , hObject,一个GDI对象的句柄
.DLL命令 释放设备场景_, 整数型, "user32", "ReleaseDC", , ReleaseDC
.参数 窗口句柄, 整数型, , hwnd,要释放的设备场景相关的窗口句柄
.参数 设备场景, 整数型, , hdc,要释放的设备场景句柄
.DLL命令 删除设备场景_, 整数型, "gdi32.dll", "DeleteDC"
.参数 设备场景句柄, 整数型, , hdc,将要删除的设备场景
.DLL命令 取客户区矩形_, 整数型, "user32", "GetClientRect"
.参数 窗口句柄, 整数型
.参数 矩形区域, 矩形
.DLL命令 取前台窗口_, 整数型, "user32", "GetForegroundWindow"
.DLL命令 取全局场景, 整数型, , "GetWindowDC"
.参数 hwnd, 整数型
.DLL命令 printwindow, 整数型, , "PrintWindow"
.参数 hwnd, 整数型
.参数 hdcblt, 整数型
.参数 nFlags, 整数型
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。