易语言编辑框加背景图片代码实例
DLL代码
.版本 2
.DLL命令 CreatePatternBrush, 整数型, "gdi32", "CreatePatternBrush"
.参数 hBitmap, 整数型
.DLL命令 GetWindowLong, 整数型, "user32", "GetWindowLongA"
.参数 hwnd, 整数型
.参数 nIndex, 整数型
.DLL命令 SetWindowLong, 整数型, "user32", "SetWindowLongA"
.参数 hwnd, 整数型
.参数 nIndex, 整数型
.参数 dwNewLong, 整数型
.DLL命令 CallWindowProcA, 整数型, , "CallWindowProcA"
.参数 lproc, 整数型
.参数 hwnd, 整数型
.参数 umsg, 整数型
.参数 wparam, 整数型
.参数 lparam, 整数型
.DLL命令 DeleteObject, 整数型, "gdi32", "DeleteObject"
.参数 hObject, 整数型
.DLL命令 SetBkMode, 整数型, "gdi32", "SetBkMode"
.参数 hdc, 整数型
.参数 nBkMode, 整数型
常量表
.版本 2
.常量 GWL_WNDPROC, "-4"
.常量 WM_CTLCOLOREDIT, "307"
.常量 TRANSPARENT, "1"
编辑框加背景代码
.版本 2
.程序集 窗口程序集1
.程序集变量 lpOldProc, 整数型
.程序集变量 hBlackBrush, 整数型
.子程序 __启动窗口_创建完毕
.局部变量 图片, 对象
图片框1.可视 = 假
图片.创建图片对象 (图片框1.图片)
hBlackBrush = CreatePatternBrush (图片.读数值属性 (“handle”, ))
lpOldProc = GetWindowLong (取窗口句柄 (), #GWL_WNDPROC)
SetWindowLong (取窗口句柄 (), #GWL_WNDPROC, 到数值 (&WndProc))
.子程序 WndProc, 整数型
.参数 hwnd, 整数型
.参数 umsg, 整数型
.参数 wparam, 整数型
.参数 lparam, 整数型
.如果真 (umsg = #WM_CTLCOLOREDIT)
SetBkMode (wparam, #TRANSPARENT)
返回 (hBlackBrush)
.如果真结束
返回 (CallWindowProcA (lpOldProc, hwnd, umsg, wparam, lparam))
.子程序 __启动窗口_可否被关闭, 逻辑型
.如果真 (hBlackBrush > 0)
DeleteObject (hBlackBrush)
.如果真结束
.子程序 _编辑框1_内容被改变
编辑框1.重画 ()
.子程序 _编辑框1_滚轮被滚动, 逻辑型
.参数 滚动距离, 整数型
.参数 功能键状态, 整数型
编辑框1.重画 ()
运行结果:
总结
以上是 易语言编辑框加背景图片代码实例 的全部内容, 来源链接: utcz.com/z/354670.html