:6.045KB : :1 :2019-12-13 20:13:48
.子程序 开启边框美化, , 公开, 给能够获取焦点的窗口(控件)美化边框
.参数 窗口句柄, 整数型, , 要美化边框那个窗口的句柄,子控件将自动美化
.参数 普通边框颜色, 整数型, 可空, 未获取焦点时的边框颜色,默认和系统一致
.参数 焦点边框颜色1, 整数型, 可空, 获取焦点之后的边框颜色1,默认为QQ那种蓝色
.参数 焦点边框颜色2, 整数型, 可空, 获取焦点之后的边框颜色2,默认为QQ那种蓝色
.局部变量 hWndFocus, 整数型
.如果真 (是否为空 (普通边框颜色))
普通边框颜色 = GetSysColor (#COLOR_WINDOWFRAME)
.如果真结束
.如果真 (是否为空 (焦点边框颜色1))
焦点边框颜色1 = 16631904
.如果真结束
.如果真 (是否为空 (焦点边框颜色2))
焦点边框颜色2 = 15182921
.如果真结束
hWndFocus = GetFocus ()
Border_SubClass (窗口句柄, hWndFocus, 普通边框颜色, 焦点边框颜色1, 焦点边框颜色2)
ClassName = 取空白文本 (#MAX_CLASS_NAME)
GetClassName (hWnd, ClassName, #MAX_CLASS_NAME)
' 判断哪些类名的窗口要加效果
.如果真 (ClassName = “Edit” 或 ClassName = “ListBox” 或 ClassName = “SysTreeView32” 或 ClassName = “SysListView32”)
hProc = GetProp (hWnd, #BORDER_HPROC)
.如果真 (hProc = 0)
hProc = SetWindowLong (hWnd, #GWL_WNDPROC, 到整数 (&Border_OnMessage))
SetProp (hWnd, #BORDER_HPROC, hProc)
.如果真结束
SetProp (hWnd, #BORDER_BFOCUS, 到整数 (hWnd = hWndFocus))
SetProp (hWnd, #BORDER_COLOR1, Border_Color1)
SetProp (hWnd, #BORDER_COLOR2, Border_Color2)
SetProp (hWnd, #BORDER_COLOR3, Border_Color3)
Border_DrawBorder (hWnd)
.如果真结束
' 自动给子窗口应用效果,递归调用本程序
hWnd = GetWindow (hWnd, #GW_CHILD)
.判断循环首 (hWnd ≠ 0)
Border_SubClass (hWnd, hWndFocus, Border_Color1, Border_Color2, Border_Color3)
hWnd = GetWindow (hWnd, #GW_HWNDNEXT)
.判断循环尾 ()
02-16高效实现超级列表框百万级数据高速导入导
02-09树形框,超级列表框,纯api美化
02-09超级列表框读写配置和移动表项
02-05易语言调用cmd命令并编辑框显示执行结果
02-04树形框全选和部分选源码
02-04超级列表框分页显示例程
02-04多线程多任务演示,自定义数据类型/超级列
02-03超级列表框EXCEL导入导出功能
02-02API编辑框模拟热键框模块,快捷键热键
02-02编辑框批量读取与写入
11-15PPT2007大纲模式下编辑框架文字教程