易语言API截图源码
系统结构:API_创建内存场景,API_创建GDI对象,API_取位图二进制位,API_置位图到设备场景,API_选入设备场景,API_删除设备场景,API_删除对象,API_复制场景位图,API_取设备场景,
======窗口程序集_启动窗口
| |
| |------ _按钮_截图_被单击
| |
| |------ __创建完毕
| |
| |
======调用的Dll
| |
| |---[dll]------ API_创建内存场景
| |
| |---[dll]------ API_创建GDI对象
| |
| |---[dll]------ API_取位图二进制位
| |
| |---[dll]------ API_置位图到设备场景
| |
| |---[dll]------ API_选入设备场景
| |
| |---[dll]------ API_删除设备场景
| |
| |---[dll]------ API_删除对象
| |
| |---[dll]------ API_复制场景位图
| |
| |---[dll]------ API_取设备场景
调用的DLL命令:
.DLL命令 API_创建内存场景, 整数型, "gdi32", "CreateCompatibleDC", , 创建一个与特定设备场景一致的内存设备场景 新设备场景句柄,若出错则为零
.参数 设备场景句柄, 整数型, , 设备场景句柄。新的设备场景将与它一致。也可能为0以创建一个与屏幕一致的设备场景;
.DLL命令 API_创建GDI对象, 整数型, "gdi32", "CreateDIBSection", , 创建一个DIBSection。这是一个GDI对象,可象一幅与设备有关位图那样使用。但是,它在内部作为一幅与设备无关位图保存 执行成功返回DIBSection位图的句柄,零表示失败。会设置GetLastError
.参数 设备场景句柄, 整数型, , 一个设备场景的句柄。如dw设为DIB_PAL_COLORS,那么DIB颜色表就会用来自逻辑调色板的颜色进行初始化
.参数 pBitmapInfo, 位图信息_, , BITMAPINFO,这个结构初始化成欲创建的那幅位图的配置数据
.参数 常数, 整数型, , 下述常数之一:;DIB_PAL_COLORS:BITMAPINFO包含了一个16位调色板索引的数组;DIB_RGB_COLORS:BITMAPINFO包含了一个颜色表,其中保存有32位颜色(RGBQUAD)
.参数 内存地址, 整数型, , 用于载入DIBSection数据区的内存地址
.参数 文件映射句柄, 整数型, , 指向一个文件映射对象的可选句柄,位图将在其中创建。如设为零,Windows会自动分配内存
.参数 偏移量, 整数型, , 如指定了句柄,就用这个参数指定位图数据在文件映射对象中的偏移量;
.DLL命令 API_取位图二进制位, 整数型, "gdi32.dll", "GetDIBits", , 将来自一幅位图的二进制位复制到一幅与设备无关的位图里 非零表示成功,零表示失败。在Windows 95中,返回值是返回的扫描线数量
.参数 设备场景句柄, 整数型, , aHDC,定义了与设备有关位图hBitmap的配置信息的一个设备场景的句柄
.参数 源位图句柄, 整数型, , hBitmap,源位图的句柄。绝对不能将这幅位图选入设备场景
.参数 扫描线初始编号, 整数型, , nStartScan,欲复制到DIB中的第一条扫描线的编号
.参数 扫描线数量, 整数型, , nNumScans,欲复制的扫描线数量
.参数 缓冲区指针, 字节型, 传址, lpBits,指向一个缓冲区的指针。这个缓冲区将用于装载采用DIB格式的信息,但不取回数据(用ByVal传递零值)
.参数 位图结构, 位图信息_, , lpBI,BITMAPINFO,对lpBits DIB的格式及颜色进行说明的一个结构。在BITMAPINFOHEADER结构中,从biSize到biCompression之间的所有字段都必须初始化
.参数 常量标志, 整数型, , wUsage,下述常数之一:;DIB_PAL_COLORS:在颜色表中装载一个16位所以数组,它们与当前选定的调色板有关;DIB_RGB_COLORS:在颜色表中装载RGB颜色;
.DLL命令 API_置位图到设备场景, 整数型, "gdi32", "SetDIBitsToDevice", , 将一幅与设备无关位图的全部或部分数据直接复制到一个设备。这个函数在设备中定义了一个目标矩形,以便接收位图数据。它也在DIB中定义了一个源矩形,以便从中提取数据 执行成功则返回扫描线的数量,零表示失败。会设置GetLastError
.参数 设备场景句柄, 整数型, , hdc,一个设备场景的句柄。该场景用于接收位图数据
.参数 目标矩形横坐标, 整数型, , x,用逻辑坐标表示的目标矩形的起点
.参数 目标矩形纵坐标, 整数型, , y,用逻辑坐标表示的目标矩形的起点
.参数 目标矩形宽度, 整数型, , dx,用目标矩形的设备单位表示的宽度及高度
.参数 目标矩形高度, 整数型, , dy,用目标矩形的设备单位表示的宽度及高度
.参数 源矩形横坐标, 整数型, , SrcX,用设备坐标表示的源矩形在DIB中的起点
.参数 源矩形纵坐标, 整数型, , SrcY,用设备坐标表示的源矩形在DIB中的起点
.参数 扫描线初始编号, 整数型, , Scan,Bits数组中第一条扫描线的编号。如BitsInfo之BITMAPINFOHEADER部分的biHeight字段是正数,那么这条扫描线就会从位图的底部开始计算;如果是负数,就从顶部开始计算
.参数 扫描线数量, 整数型, , NumScans,欲复制的扫描线数量
.参数 缓冲区指针, 字节型, 传址, Bits,指向一个缓冲区的指针。这个缓冲区包含了以DIB格式描述的位图数据;这种格式是由BitsInfo指定的
.参数 位图结构, 位图信息_, , BitsInfo,对Bits DIB的格式和颜色进行描述的一个结构
.参数 常量标志, 整数型, , wUsage,常数
.DLL命令 API_选入设备场景, 整数型, "gdi32", "SelectObject", , 每个设备场景都可能有选入其中的图形对象。其中包括位图、刷子、字体、画笔以及区域等等。一次选入设备场景的只能有一个对象。选定的对象会在设备场景的绘图操作中使用。例如,当前选定的画笔决定了在设备场景中描绘的线段颜色及样式 与以前选入设备场景的相同hObject类型的一个对象的句柄,零表示出错。如选定的对象是一个区域(Region),结果就是下列常数之一:SIMPLEREGION, ; COMPLEXREGION 或 NULLREGION 对区域进行描述, GDI_ERROR 表示出错
.参数 设备场景句柄, 整数型, , 一个设备场景的句柄
.参数 对象句柄, 整数型, , 一个画笔、位图、刷子、字体或区域的句柄;
.DLL命令 API_删除设备场景, 整数型, "gdi32", "DeleteDC", , 删除专用设备场景或信息场景,释放所有相关窗口资源。不要将它用于GetDC函数取回的设备场景 执行成功则为非零,失败则为零
.参数 设备场景句柄, 整数型, , 将要删除的设备场景 在vb里使用不要将它用于由vb hdc属性获取的设备场景句柄;
.DLL命令 API_删除对象, 整数型, "gdi32", "DeleteObject", , 用这个函数删除GDI对象,比如画笔、刷子、字体、位图、区域以及调色板等等。对象使用的所有系统资源都会被释放 非零表示成功,零表示失败
.参数 对象句柄, 整数型, , 一个GDI对象的句柄;
.DLL命令 API_复制场景位图, 整数型, "gdi32", "BitBlt", , 将一幅位图从一个设备场景复制到另一个。源和目标DC相互间必须兼容 非零表示成功,零表示失败。会设置GetLastError
.参数 目标设备场景, 整数型, , 目标设备场景
.参数 目标横坐标, 整数型, , 对目标DC中目标矩形左上角位置进行描述的那个点。用目标DC的逻辑坐标表示
.参数 目标纵坐标, 整数型, , 同上
.参数 传输图像宽度, 整数型, , 欲传输图象的宽度和高度
.参数 传输图像高度, 整数型, , 同上
.参数 源设备场景, 整数型, , 源设备场景。如光栅运算未指定源,则应设为0
.参数 源横坐标, 整数型, , 对源DC中源矩形左上角位置进行描述的那个点。用源DC的逻辑坐标表示
.参数 源纵坐标, 整数型, , 同上
.参数 光栅运算方式, 整数型, , 传输过程要执行的光栅运算;
.DLL命令 API_取设备场景, 整数型, "user32", "GetDC", , 获取指定窗口的设备场景 指定窗口的设备场景句柄,出错则为0
.参数 hwnd, 整数型, , 将获取其设备场景的窗口的句柄。若为0,则要获取整个屏幕的DC;
易语言系统盘符修改器源码,遍历卷,DeleteVolumeMountPoint,GetVolumePathNamesForVolumeName,SetVolumeMountPoint,FindFirstVolume,FindNextVolume,FindVolumeClose,MessageBox...
易语言类的使用将多线程操作封装到类源码,取数子程序100,取数子程序10,取数子程序_10,取数子程序_100,初始组件,创建许可证,删除许可证...
易语言用空格分割文本源码,子程序_启动线程,子程序_创建进入许可证,子程序_删除进入许可证,子程序_进入许可区,子程序_退出许可区,子程序_等待线程,子程序_挂起线程,子程序_继续执行...
易语言编写QQ邮件发送器V10e源码,易语言编写QQ邮件发送器V10e...
易语言系统盘符修改器源码,遍历卷,DeleteVolumeMountPoint,GetVolumePathNamesForVolumeName,SetVolumeMountPoint,FindFirstVolume,FindNextVolume,FindVolumeClose,MessageBox...
取随机文本,取随机时间,排序列表,CompareFunc,比较时间,取文本地址,取日期时间地址,lstrcmpA...
TextEffect,timeGetTime,SetTextCharacterExtra,OffsetRect,SetTextColor,FillRect,CreateSolidBrush,DeleteObject,GetSysColor,TextOut,DrawText,OleTranslateColor,GetDC,lstrlen,ReleaseDC,CreateFont,MulDiv,GetDeviceCaps,SelectObject...
易语言屏幕笼罩源码,屏幕笼罩...
易语言透明桌面软件研究源码,透明桌面软件研究,MakeTrans,设主窗透明度,Ansi转Unicode,BitBlt,DeleteObject,SetWindowLong,AlphaBlend,UpdateLayeredWindow,CreateDIBSection,GetDIBits,SetDIBits,CreateCompatibleDC,SelectObject,DeleteDC,CopyMemory,SetWi...