易语言卷帘式菜单加背景图片源码
系统结构:初始化卷帘式菜单底图,加入卷帘式菜单底图,MyExtTextOutA,销毁卷帘式菜单底图,SetWindowLongA,CallWindowProcA,画矩形_,VirtualProtect,GetProcAddress,GetModuleHandleA,CreatePatternBrush,设置背景模式_,填充矩形_,扩展文本描绘_,取对象句柄_,选入设备场景_,删除对象_,WindowFromDC,创建画笔_,释放设备场景_,取设备场景_,取窗口全部设备场景_,取得边界矩形_,取设备场景起点_,取得场景窗口范围_,取得窗口区域_,取设备场景刷子颜色_,取背景色_,
======窗口程序集1
| |
| |------ __启动窗口_创建完毕
| |
| |------ __启动窗口_将被销毁
| |
| |
======置卷帘式菜单底图程序集
| |
| |------ 初始化卷帘式菜单底图
| |
| |------ 加入卷帘式菜单底图
| |
| |------ MyExtTextOutA
| |
| |------ 销毁卷帘式菜单底图
| |
| |
======调用的Dll
| |
| |---[dll]------ SetWindowLongA
| |
| |---[dll]------ CallWindowProcA
| |
| |---[dll]------ 画矩形_
| |
| |---[dll]------ VirtualProtect
| |
| |---[dll]------ GetProcAddress
| |
| |---[dll]------ GetModuleHandleA
| |
| |---[dll]------ CreatePatternBrush
| |
| |---[dll]------ 设置背景模式_
| |
| |---[dll]------ 填充矩形_
| |
| |---[dll]------ 扩展文本描绘_
| |
| |---[dll]------ 取对象句柄_
| |
| |---[dll]------ 选入设备场景_
| |
| |---[dll]------ 删除对象_
| |
| |---[dll]------ WindowFromDC
| |
| |---[dll]------ 创建画笔_
| |
| |---[dll]------ 释放设备场景_
| |
| |---[dll]------ 取设备场景_
| |
| |---[dll]------ 取窗口全部设备场景_
| |
| |---[dll]------ 取得边界矩形_
| |
| |---[dll]------ 取设备场景起点_
| |
| |---[dll]------ 取得场景窗口范围_
| |
| |---[dll]------ 取得窗口区域_
| |
| |---[dll]------ 取设备场景刷子颜色_
| |
| |---[dll]------ 取背景色_
调用的DLL命令:
.DLL命令 SetWindowLongA, 子程序指针, , "SetWindowLongA"
.参数 hWnd, 整数型
.参数 nIndex, 整数型
.参数 dwNewLong, 子程序指针
.DLL命令 CallWindowProcA, 整数型, , "CallWindowProcA"
.参数 lpPrevWndFunc, 子程序指针
.参数 hWnd, 整数型
.参数 Msg, 整数型
.参数 wParam, 整数型
.参数 lParam, 整数型
.DLL命令 画矩形_, 整数型, "gdi32.dll", "Rectangle", , Rectangle
.参数 设备场景句柄, 整数型, , hdc
.参数 左上角横坐标, 整数型, , X
.参数 左上角纵坐标, 整数型, , Y
.参数 右下角横坐标, 整数型, , X1
.参数 右下角纵坐标, 整数型, , Y1
.DLL命令 VirtualProtect, 逻辑型
.参数 lpAddress, 整数型
.参数 dwSize, 整数型
.参数 flNewProtect, 整数型
.参数 lpflOldProtect, 整数型, 传址
.DLL命令 GetProcAddress, 整数型
.参数 hModule, 整数型
.参数 lpProcName, 文本型
.DLL命令 GetModuleHandleA, 整数型
.参数 lpModuleName, 文本型
.DLL命令 CreatePatternBrush, 整数型, , "CreatePatternBrush"
.参数 位图句柄, 整数型
.DLL命令 设置背景模式_, 整数型, "gdi32", "SetBkMode", , SetBkMode,Long,前一个背景模式的值
.参数 设备场景句柄, 整数型, , hdc,设备场景的句柄
.参数 方式, 整数型, , nBkMode,下述常数之一:OPAQUE用当前的背景色填充虚线画笔、阴影刷子以及字符的空隙TRANSPARENT透明处理,即不作上述填充
.DLL命令 填充矩形_, 整数型, "user32.dll", "FillRect", , FillRect,用指定的刷子填充一个矩形
.参数 设备场景, 整数型, , hdc,设备场景的句柄
.参数 填充区域, 矩形_, , lpRect,对填充区域进行描述的一个矩形,采用逻辑坐标
.参数 刷子句柄, 整数型, , hBrush,欲使用的刷子的句柄
.DLL命令 扩展文本描绘_, 整数型, "gdi32.dll", "ExtTextOutA", , 经过扩展的文本描绘函数
.参数 设备场景句柄, 整数型, , hdc,设备场景的句柄
.参数 起点横坐标, 整数型, , X,以逻辑坐标表示的一个点,指定了绘图起点横坐标
.参数 起点纵坐标, 整数型, , Y,以逻辑坐标表示的一个点,指定了绘图起点纵坐标
.参数 标志常数, 整数型, , wOptions,标志常数的任意组合
.参数 描绘的范围, 整数型, , lpRect,指定一个矩形,用于对文本进行格式化处理
.参数 欲描绘的文本, 文本型, , lpString,欲描绘的字串
.参数 文本长度, 整数型, , nCount,字串中要显示出来的字符数
.参数 间距, 整数型, , lpDx,参见相关帮助
.DLL命令 取对象句柄_, 整数型, "gdi32", "GetStockObject"
.参数 类型, 整数型
.DLL命令 选入设备场景_, 整数型, "gdi32.dll", "SelectObject", , SelectObject
.参数 场景句柄, 整数型, , hdc
.参数 对象句柄, 整数型, , hobject
.DLL命令 删除对象_, 整数型, "gdi32.dll", "DeleteObject", , DeleteObject
.参数 对象句柄, 整数型, , hObject,一个GDI对象的句柄
.DLL命令 WindowFromDC, 整数型, , "WindowFromDC"
.参数 hdc
.DLL命令 创建画笔_, 整数型, "gdi32", "CreatePen"
.参数 风格, 整数型
.参数 宽度, 整数型
.参数 颜色, 整数型
.DLL命令 释放设备场景_, 整数型, "user32", "ReleaseDC", , ReleaseDC
.参数 窗口句柄, 整数型, , hwnd,要释放的设备场景相关的窗口句柄
.参数 设备场景, 整数型, , hdc,要释放的设备场景句柄
.DLL命令 取设备场景_, 整数型, "user32", "GetDC", , 获取指定窗口的设备场景 指定窗口的设备场景句柄,出错则为0
.参数 窗口的句柄, 整数型, , 将获取其设备场景的窗口的句柄。若为0,则要获取整个屏幕的DC;
.DLL命令 取窗口全部设备场景_, 整数型, "user32.dll", "GetWindowDC"
.参数 窗口句柄, 整数型
.DLL命令 取得边界矩形_, 整数型, "gdi32", "GetBoundsRect"
.参数 设备场景句柄, 整数型, , hdc Long,边界矩形对应的设备场景
.参数 装载矩形, 矩形_, 传址, lprcBounds RECT,装载设备场景hdc的当前边界矩形
.参数 标识, 整数型, , flags Long,参见相关帮助
.DLL命令 取设备场景起点_, 整数型, "gdi32", "GetDCOrgEx"
.参数 设备场景, 整数型
.参数 起点, 坐标_, 传址
.DLL命令 取得场景窗口范围_, 整数型, "gdi32.dll", "GetWindowExtEx"
.参数 场景句柄, 整数型
.参数 尺寸, 尺寸_
.DLL命令 取得窗口区域_, 整数型, "user32.dll", "GetWindowRgn"
.参数 窗口句柄, 整数型
.参数 区域, 整数型, 传址
.DLL命令 取设备场景刷子颜色_, 整数型, "gdi32.dll", "GetDCBrushColor"
.参数 设备场景句柄, 整数型, , hdc
.DLL命令 取背景色_, 整数型, "gdi32", "GetBkColor", , 取得指定设备场景当前的背景颜色
.参数 设备场景句柄, 整数型, , hdc Long,欲查询背景颜色的一个设备场景
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。