易语言超级列表框置行色模块源码
系统结构:置列表框行色,NewProc,SetWindowLong,CopyMemory_NMLVCUSTOMDRAWTolParam,CopyMemory_NMLVCUSTOMDRAW,CallWindowProc,GetParent,GetWindowLong,CreateFontIndirect,SelectObject,CreateBrushIndirect,FillRect,SetBkColor,SetTextColor,CreatePen,SetBkMode,SendMessage,SendMessageRect,SendMessageText,DrawText,DeleteObject,CopyMemory_NMHDR,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ 置列表框行色
| |
| |------ NewProc
| |
| |
======窗口程序集1
| |
| |------ _窗口1_创建完毕
| |
| |
======调用的Dll
| |
| |---[dll]------ SetWindowLong
| |
| |---[dll]------ CopyMemory_NMLVCUSTOMDRAWTolParam
| |
| |---[dll]------ CopyMemory_NMLVCUSTOMDRAW
| |
| |---[dll]------ CallWindowProc
| |
| |---[dll]------ GetParent
| |
| |---[dll]------ GetWindowLong
| |
| |---[dll]------ CreateFontIndirect
| |
| |---[dll]------ SelectObject
| |
| |---[dll]------ CreateBrushIndirect
| |
| |---[dll]------ FillRect
| |
| |---[dll]------ SetBkColor
| |
| |---[dll]------ SetTextColor
| |
| |---[dll]------ CreatePen
| |
| |---[dll]------ SetBkMode
| |
| |---[dll]------ SendMessage
| |
| |---[dll]------ SendMessageRect
| |
| |---[dll]------ SendMessageText
| |
| |---[dll]------ DrawText
| |
| |---[dll]------ DeleteObject
| |
| |---[dll]------ CopyMemory_NMHDR
调用的DLL命令:
.DLL命令 SetWindowLong, 整数型, "user32.dll", "SetWindowLongA"
.参数 窗口句柄, 整数型
.参数 窗口信息值, 整数型
.参数 窗口信息新值, 整数型
.DLL命令 CopyMemory_NMLVCUSTOMDRAWTolParam, , "kernel32.dll", "RtlMoveMemory"
.参数 Destination, 整数型
.参数 Source, NMLVCUSTOMDRAW
.参数 cbCopy, 整数型
.DLL命令 CopyMemory_NMLVCUSTOMDRAW, , "kernel32.dll", "RtlMoveMemory"
.参数 Destination, NMLVCUSTOMDRAW
.参数 Source, 整数型
.参数 cbCopy, 整数型
.DLL命令 CallWindowProc, 整数型, "user32.dll", "CallWindowProcA", , ,
.参数 前一窗口函数地址, 整数型
.参数 窗口句柄, 整数型
.参数 消息值, 整数型
.参数 附加参数1, 整数型
.参数 附加参数2, 整数型
.DLL命令 GetParent, 整数型, "user32.dll", "GetParent"
.参数 hWnd, 整数型, , ;
.DLL命令 GetWindowLong, 整数型, "user32.dll", "GetWindowLongA"
.参数 窗口句柄, 整数型
.参数 属性, 整数型
.DLL命令 CreateFontIndirect, 整数型, "gdi32", "CreateFontIndirectA", , 用指定的属性创建一种逻辑字体 执行成功则返回逻辑字体句柄,零表示失败
.参数 lpLogFont, LOGFONT, , LOGFONT,这个结构定义了逻辑字体请求的属性;
.DLL命令 SelectObject, 整数型, "gdi32", "SelectObject", , 每个设备场景都可能有选入其中的图形对象。其中包括位图、刷子、字体、画笔以及区域等等。一次选入设备场景的只能有一个对象。选定的对象会在设备场景的绘图操作中使用。例如,当前选定的画笔决定了在设备场景中描绘的线段颜色及样式 与以前选入设备场景的相同hObject类型的一个对象的句柄,零表示出错。如选定的对象是一个区域(Region),结果就是下列常数之一:SIMPLEREGION, ; COMPLEXREGION 或 NULLREGION 对区域进行描述, GDI_ERROR 表示出错
.参数 hdc, 整数型, , 一个设备场景的句柄
.参数 hObject, 整数型, , 一个画笔、位图、刷子、字体或区域的句柄;
.DLL命令 CreateBrushIndirect, 整数型, "gdi32", "CreateBrushIndirect", , 在一个LOGBRUSH数据结构的基础上创建一个刷子 如执行成功,返回指向新刷子的一个句柄。零表示失败
.参数 lpLogBrush, LOGBRUSH, , LOGBRUSH;
.DLL命令 FillRect, 整数型, "user32", "FillRect", , 用指定的刷子填充一个矩形 非零表示成功,零表示失败。会设置GetLastError
.参数 hdc, 整数型, , 设备场景的句柄
.参数 lpRect, RECT, , RECT,对填充区域进行描述的一个矩形,采用逻辑坐标
.参数 hBrush, 整数型, , 欲使用的刷子的句柄;
.DLL命令 SetBkColor, 整数型, "gdi32", "SetBkColor", , 为指定的设备场景设置背景颜色。背景颜色用于填充阴影刷子、虚线画笔以及字符(如背景模式为OPAQUE)中的空隙。也在位图颜色转换期间使用。参考SetBkMode 前一个背景色,CLR_INVALID表示出错
.参数 hdc, 整数型, , 设备场景的句柄
.参数 crColor, 整数型, , 新背景颜色的RGB颜色值;
.DLL命令 SetTextColor, 整数型, "gdi32", "SetTextColor", , 设置当前文本颜色。这种颜色也称为“前景色” 文本色的前一个RGB颜色设定。CLR_INVALID表示失败。会设置GetLastError
.参数 hdc, 整数型, , 设备场景的句柄
.参数 crColor, 整数型, , 新的文本色在VB里使用如改变了这个设置,注意恢复VB窗体或控件原始的文本颜色;
.DLL命令 CreatePen, 整数型, "gdi32", "CreatePen", , 用指定的样式、宽度和颜色创建一个画笔 如函数执行成功,就返回指向新画笔的一个句柄;否则返回零
.参数 nPenStyle, 整数型, , 指定画笔样式,可以是下述常数之一;PS_SOLID:画笔画出的是实线;PS_DASH:画笔画出的是虚线(nWidth必须是1);PS_DOT:画笔画出的是点线(nWidth必须是1);PS_DASHDOT:画笔画出的是点划线(nWidth必须是1);PS_DASHDOTDOT:画笔画出的是点-点-划线(nWidth必须是1);PS_NULL:画笔不能画图;PS_INSIDEFRAME:画笔在由椭圆、矩形、圆角矩形、饼图以及弦等生成的封闭对象框中画图。如指定的准确RGB颜色不存在,就进行抖动处理
.参数 nWidth, 整数型, , 以逻辑单位表示的画笔的宽度
.参数 crColor, 整数型, , 画笔的RGB颜色;
.DLL命令 SetBkMode, 整数型, "gdi32", "SetBkMode", , 指定阴影刷子、虚线画笔以及字符中的空隙的填充方式 前一个背景模式的值
.参数 hdc, 整数型, , 设备场景的句柄
.参数 nBkMode, 整数型, , 下述常数之一:;OPAQUE:用当前的背景色填充虚线画笔、阴影刷子以及字符的空隙;TRANSPARENT:透明处理,即不作上述填充;
.DLL命令 SendMessage, 整数型, "user32", "SendMessageA", , 调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。SendMessageBynum, ; SendMessageByString是该函数的“类型security”声明形式 由具体的消息决定
.参数 hwnd, 整数型, , 要接收消息的那个窗口的句柄
.参数 wMsg, 整数型, , 消息的标识符
.参数 wParam, 整数型, , 具体取决于消息
.参数 lParam, 整数型, , 具体取决于消息;
.DLL命令 SendMessageRect, 整数型, "user32", "SendMessageA", , 调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。SendMessageBynum, ; SendMessageByString是该函数的“类型security”声明形式 由具体的消息决定
.参数 hwnd, 整数型, , 要接收消息的那个窗口的句柄
.参数 wMsg, 整数型, , 消息的标识符
.参数 wParam, 整数型, , 具体取决于消息
.参数 lParam, RECT, 传址, 具体取决于消息;
.DLL命令 SendMessageText, 整数型, "user32", "SendMessageA", , 调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。SendMessageBynum, ; SendMessageByString是该函数的“类型security”声明形式 由具体的消息决定
.参数 hwnd, 整数型, , 要接收消息的那个窗口的句柄
.参数 wMsg, 整数型, , 消息的标识符
.参数 wParam, 整数型, , 具体取决于消息
.参数 lParam, 列表数据结构, 传址, 具体取决于消息;
.DLL命令 DrawText, 整数型, "user32", "DrawTextA", , 将文本描绘到指定的矩形中 描绘文字的高度
.参数 hdc, 整数型, , 欲在其中显示文字的一个设备场景的句柄
.参数 lpStr, 文本型, , 欲描绘的文本字串
.参数 nCount, 整数型, , 欲描绘的字符数量。如果要描绘整个字串(直到空中止符),则可将这个参数设为-1
.参数 lpRect, RECT, , RECT,指定用于绘图的一个格式化矩形(采用逻辑坐标)
.参数 wFormat, 整数型, , 一个标志位数组,决定了以何种形式执行绘图。参考下面总结的常数类型列表标志常数说明DT_BOTTOM必须同时指定DT_SINGLE。指示文本对齐格式化矩形的底边DT_CALCRECT象下面这样计算格式化矩形:多行绘图时矩形的底边根据需要进行延展,以便容下所有文字;单行绘图时,延展矩形的右侧。不描绘文字。由lpRect参数指定的矩形会载入计算出来的值DT_CENTER文本垂直居中DT_EXPANDTABS描绘文字的时候,对制表站进行扩展。默认的制表站间距是8个字符。但是,可用DT_TABSTOP标志改变这项设定DT_EXTERNALLEADING计算文本行高度的时候,使用当前字体的外部间距属性(the external leading attribute)DT_LEFT文本左对齐DT_NOCLIP描绘文字时不剪切到指定的矩形DT_NOPREFIX通常,函数认为 & 字符表示应为下一个字符加上下划线。该标志禁止这种行为DT_RIGHT文本右对齐DT_SINGLELINE只画单行DT_TABSTOP指定新的制表站间距,采用这个整数的高8位DT_TOP必须同时指定DT_SINGLE。指示文本对齐格式化矩形的顶部DT_VCENTER必须同时指定DT_SINGLE。指示文本对齐格式化矩形的中部DT_WORDBREAK进行自动换行。如用SetTextAlign函数设置了TA_UPDATECP标志,这里的设置则无效;
.DLL命令 DeleteObject, 整数型, "gdi32", "DeleteObject", , 用这个函数删除GDI对象,比如画笔、刷子、字体、位图、区域以及调色板等等。对象使用的所有系统资源都会被释放 非零表示成功,零表示失败
.参数 hObject, 整数型, , 一个GDI对象的句柄;
.DLL命令 CopyMemory_NMHDR, , , "RtlMoveMemory"
.参数 Destination, NMHDR
.参数 Source, 整数型
.参数 cbCopy, 整数型
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言两个文件内存中通讯源码,子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错...
易语言易模块管理器Include目录源码,CopyTo_CreateProcessDebugInfo,CopyTo_CreateThreadDebugInfo,CopyTo_ExitThreadDebugInfo,CopyTo_ExitProcessDebugInfo,CopyTo_LoadDllDebugInfo,CopyTo_UnloadDllDebugInfo,CopyTo_ExceptionDebugInfo,Copy...
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错误信息,读入字节集,读入2M字节集,清除文件缓冲区,读入文本,写出文本,写文本行,读入一行,插入字节集,取文件号...
初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...