//
//
//
//
//
//
//
//
//
//
软件Tags:
易语言API创建图片底图源码系统结构:窗口过程,位图到字节集,取位图句柄,取位图宽度,取位图高度,我要快照,复制位图_,取设备场景_,选入设备场景_,创建设备位图_,创建内存场景_,删除对象_,释放设备场景_,创建窗口_,取得窗口信息_,设置窗口信息_,呼叫窗口函数地址_,清除窗口_,删除窗口属性_,取窗口属性_,设置窗口属性_,复制二进制位图_,复制位图信息_,复制位图头_,删除设备场景_,取对象信息_,全局堆栈分配_,全局内存分配_,取窗口全部设备场景_,取屏幕句柄_,取窗口矩形_,置伸缩模式_,判断窗口句柄_,画图标_,鼠标句柄,取鼠标信息,取得图标信息_, ======窗口程序集_启动窗口 || ||------__启动窗口_创建完毕 || ||------_按钮1_被单击 || ||------窗口过程 || ||------位图到字节集 || ||------取位图句柄 || ||------取位图宽度 || ||------取位图高度 || ||------我要快照 || || ======调用的Dll || ||---[dll]------复制位图_ || ||---[dll]------取设备场景_ || ||---[dll]------选入设备场景_ || ||---[dll]------创建设备位图_ || ||---[dll]------创建内存场景_ || ||---[dll]------删除对象_ || ||---[dll]------释放设备场景_ || ||---[dll]------创建窗口_ || ||---[dll]------取得窗口信息_ || ||---[dll]------设置窗口信息_ || ||---[dll]------呼叫窗口函数地址_ || ||---[dll]------清除窗口_ || ||---[dll]------删除窗口属性_ || ||---[dll]------取窗口属性_ || ||---[dll]------设置窗口属性_ || ||---[dll]------复制二进制位图_ || ||---[dll]------复制位图信息_ || ||---[dll]------复制位图头_ || ||---[dll]------删除设备场景_ || ||---[dll]------取对象信息_ || ||---[dll]------全局堆栈分配_ || ||---[dll]------全局内存分配_ || ||---[dll]------取窗口全部设备场景_ || ||---[dll]------取屏幕句柄_ || ||---[dll]------取窗口矩形_ || ||---[dll]------置伸缩模式_ || ||---[dll]------判断窗口句柄_ || ||---[dll]------画图标_ || ||---[dll]------鼠标句柄 || ||---[dll]------取鼠标信息 || ||---[dll]------取得图标信息_ 调用的DLL命令: .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.dll","SelectObject",,SelectObject .参数场景句柄,整数型,,hdc .参数对象句柄,整数型,,hobject .DLL命令创建设备位图_,整数型,"gdi32","CreateCompatibleBitmap" .参数设备场景句柄,整数型 .参数宽度,整数型 .参数高度,整数型 .DLL命令创建内存场景_,整数型,"Gdi32","CreateCompatibleDC" .参数设备场景句柄,整数型 .DLL命令删除对象_,整数型,"gdi32.dll","DeleteObject",,DeleteObject .参数对象句柄,整数型,,hObject,一个GDI对象的句柄 .DLL命令释放设备场景_,整数型,"user32","ReleaseDC",,ReleaseDC .参数窗口句柄,整数型,,hwnd,要释放的设备场景相关的窗口句柄 .参数设备场景,整数型,,hdc,要释放的设备场景句柄 .DLL命令创建窗口_,整数型,"user32.dll","CreateWindowExA" .参数扩展风格,整数型 .参数类名,文本型,,刚才注册的类名 .参数窗口标题,文本型 .参数风格,整数型 .参数屏幕横坐标,整数型 .参数屏幕纵坐标,整数型 .参数宽度,整数型 .参数高度,整数型 .参数父窗口句柄,整数型,,没有就写0 .参数菜单句柄,整数型 .参数模块句柄,整数型 .参数参数,整数型 .DLL命令取得窗口信息_,整数型,"user32","GetWindowLongA",,从指定窗口的结构中取得信息由nIndex决定。零表示出错。会设置GetLastError .参数窗口句柄,整数型,,欲为其获取信息的窗口的句柄 .参数属性,整数型,,欲取回的信息,可以是下述任何一个常数:;GWL_EXSTYLE:扩展窗口样式;GWL_STYLE:窗口样式;GWL_WNDPROC:该窗口的窗口函数的地址;GWL_HINSTANCE:拥有窗口的实例的句柄;GWL_HWNDPARENT:该窗口之父的句柄。不要用SetWindowWord来改变这个值;GWL_ID:对话框中一个子窗口的标识符;GWL_USERDATA:含义由应用程序规定;DWL_DLGPROC:这个窗口的对话框函数地址;DWL_MSGRESULT:在对话框函数中处理的一条消息返回的值;DWL_USER:含义由应用程序规定; .DLL命令设置窗口信息_,整数型,"user32","SetWindowLongA",,在窗口结构中为指定的窗口设置信息指定数据的前一个值 .参数窗口句柄,整数型,,hwnd,欲为其取得信息的窗口的句柄 .参数窗口信息值,整数型,,nIndex,请参考GetWindowLong函数的nIndex参数的说明 .参数窗口信息新值,整数型,,dwNewLong,由nIndex指定的窗口信息的新值 .DLL命令呼叫窗口函数地址_,整数型,"user32.dll","CallWindowProcA" .参数前一窗口函数地址,整数型 .参数窗口句柄,整数型 .参数消息值,整数型 .参数附加参数1,整数型 .参数附加参数2,整数型 .DLL命令清除窗口_,整数型,"user32.dll","DestroyWindow" .参数窗口句柄,整数型,,hwnd,预清除的窗口的句柄 .DLL命令删除窗口属性_,整数型,"user32","RemovePropA",, .参数窗口句柄,整数型 .参数属性,文本型 .DLL命令取窗口属性_,整数型,"user32","GetPropA",, .参数窗口句柄,整数型 .参数属性,文本型 .DLL命令设置窗口属性_,整数型,"user32","SetPropA",, .参数窗口句柄,整数型 .参数属性,文本型 .参数属性数据,整数型 .DLL命令复制二进制位图_,整数型,"gdi32","GetDIBits" .参数设备场景,整数型 .参数位图句柄,整数型 .参数扫描线编号,整数型 .参数扫描线数量,整数型 .参数缓冲区指针,字节集 .参数位图信息,位图信息 .参数颜色表,整数型 .DLL命令复制位图信息_,整数型,,"RtlMoveMemory" .参数位图指针,字节集 .参数位图信息,位图信息 .参数结构尺寸,整数型 .DLL命令复制位图头_,整数型,,"RtlMoveMemory" .参数位图头指针,字节集 .参数位图头结构,位图头结构 .参数结构尺寸,整数型 .DLL命令删除设备场景_,整数型,"gdi32.dll","DeleteDC" .参数设备场景句柄,整数型,,hdc,将要删除的设备场景 .DLL命令取对象信息_,整数型,,"GetObjectA" .参数对象类型,整数型,,可以是刷子位图字体 .参数结构大小,整数型 .参数相关结构,设备相关位图结构 .DLL命令全局堆栈分配_,整数型,"kernel32.dll","GlobalAlloc" .参数标志,整数型,,wFlags .参数字节,整数型,,dwBytes .DLL命令全局内存分配_,整数型,"kernel32","GlobalFree" .参数内存句柄,整数型 .DLL命令取窗口全部设备场景_,整数型,"user32.dll","GetWindowDC" .参数窗口句柄,整数型 .DLL命令取屏幕句柄_,整数型,"user32","GetDesktopWindow" .DLL命令取窗口矩形_,整数型,"user32","GetWindowRect" .参数窗口句柄,整数型 .参数矩形区域,矩形_ .DLL命令置伸缩模式_,整数型,"gdi32","SetStretchBltMode",,指定StretchBlt和StretchDIBits函数的伸缩模式。这种伸缩模式定义了Windows如何对伸缩过程中剔除的扫描线进行控制。对于VB窗体和控件,倘若在API绘图过程中使用这个函数,建议恢复原来的StretchBlt模式上一次伸缩模式的值,零表示失败 .参数设备场景句柄,整数型,,hdc .参数伸缩模式,整数型,,nStretchMode .DLL命令判断窗口句柄_,逻辑型,"user32.dll","IsWindow",,判断一个窗口句柄是否有效 .参数窗口句柄,整数型,,hwnd,待检查窗口的句柄 .DLL命令画图标_,整数型,"user32.dll","DrawIcon",,在指定的位置画一个图标非零表示成功,零表示失败。会设置GetLastError .参数设备场景句柄,整数型,,hdcLong,设备场景 .参数横坐标,整数型,,x,yLong,想描绘图标的位置(逻辑坐标) .参数纵坐标,整数型,,同上 .参数图标句柄,整数型,,hIconLong,欲描绘图标的句柄 .DLL命令鼠标句柄,整数型,"user32","GetCursorInfo" .参数光标信息,光标信息,传址 .DLL命令取鼠标信息,整数型,"user32","GetCursorInfo" .参数光标信息,光标信息,传址 .DLL命令取得图标信息_,整数型,"user32","GetIconInfo" .参数图标句柄,整数型 .参数图标信息,图标信息_
