易语言将电脑任务栏透明化的代码
作者:易语言源码教程
今天小编就为大家分享一篇关于易语言将电脑任务栏透明化的代码,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
DLL命令表
.版本 2 .DLL命令 寻找顶级窗口, 整数型, "user32", "FindWindowA", , 寻找窗口列表中第一个符合指定条件的顶级窗口(在vb里使用:FindWindow最常见的一个用途是获得ThunderRTMain类的隐藏窗口的句柄;该类是所有运行中vb执行程序的一部分。获得句柄后,可用api函数GetWindowText取得这个窗口的名称;该名也是应用程序的标题) 找到窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError .参数 窗口类名, 文本型, , 指向包含了窗口类名的空中止(C语言)字串的指针;或设为零,表示接收任何类 .参数 窗口标题, 文本型, , 指向包含了窗口文本(或标签)的空中止(C语言)字串的指针;或设为零,表示接收任何窗口标题 示例Dim hw& .DLL命令 设置透明, 整数型, , "SetLayeredWindowAttributes" .参数 窗口句柄, 整数型 .参数 crkey, 整数型 .参数 alpha, 字节型 .参数 dwflags, 整数型 .DLL命令 寻找子窗口, 整数型, "user32", "FindWindowExA", , 在窗口列表中寻找与指定条件相符的第一个子窗口 找到的窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError .参数 窗口句柄1, 整数型, , 在其中查找子的父窗口。如设为零,表示使用桌面窗口(通常说的顶级窗口都被认为是桌面的子窗口,所以也会对它们进行查找) .参数 窗口句柄2, 整数型, , 从这个窗口后开始查找。这样便可利用对FindWindowEx的多次调用找到符合条件的所有子窗口。如设为零,表示从第一个子窗口开始搜索 .参数 欲搜索的类名1, 文本型, , 欲搜索的类名。零表示忽略 .参数 欲搜索的类名2, 文本型, , 欲搜索的类名。零表示忽略; .DLL命令 取得窗口, 整数型, "user32", "GetWindow", , 获得一个窗口的句柄,该窗口与某源窗口有特定的关系 由wCmd决定的一个窗口的句柄。如没有找到相符窗口,或者遇到错误,则返回零值。会设置GetLastError .参数 源窗口, 整数型, , 源窗口 .参数 关系, 整数型, , 指定结果窗口与源窗口的关系,它们建立在下述常数基础上:;GW_CHILD=5:寻找源窗口的第一个子窗口;GW_HWNDFIRST=0:为一个源子窗口寻找第一个兄弟(同级)窗口,或寻找第一个顶级窗口;GW_HWNDLAST=1:为一个源子窗口寻找最后一个兄弟(同级)窗口,或寻找最后一个顶级窗口;GW_HWNDNEXT=2:为源窗口寻找下一个兄弟窗口;GW_HWNDPREV=3:为源窗口寻找前一个兄弟窗口;GW_OWNER=4:寻找窗口的所有者; .DLL命令 取窗体标题, 整数型, , "GetWindowTextA" .参数 当前窗口句柄, 整数型 .参数 窗口标题, 文本型, 传址 .参数 标题长度, 整数型 .DLL命令 取窗口标题长度, 整数型, "user32", "GetWindowTextLengthA" .参数 窗口句柄, 整数型 .DLL命令 设置窗口标题, 整数型, "user32", "SetWindowTextA", , 设置窗口的标题文字或控件的内容(在vb里使用:针对vb窗体,应使用caption或text属性) 非零表示成功,零表示失败。会设置GetLastError .参数 窗口句柄, 整数型, , 要设置文字的窗口的句柄 .参数 窗口标题, 文本型, , 要设到hwnd窗口中的文字; .DLL命令 取窗口风格, 整数型, , "GetWindowLongA" .参数 hwnd, 整数型 .参数 nIndex, 整数型 .DLL命令 置窗口风格, 整数型, , "SetWindowLongA" .参数 hwnd, 整数型 .参数 nindex, 整数型 .参数 hnew, 整数型
任务栏透明化
.版本 2 .程序集 窗口程序集1 .程序集变量 透明度, 整数型 .程序集变量 开始标题, 文本型 .程序集变量 开始句柄, 整数型 .程序集变量 句柄, 整数型 .子程序 __启动窗口_创建完毕 .局部变量 宽度1, 整数型 .局部变量 高度1, 整数型 .局部变量 n, 整数型 .局部变量 风格, 整数型 .局部变量 命令参数, 文本型, , "0" 取命令行 (命令参数) .判断开始 (取数组成员数 (命令参数) = 1) .判断开始 (命令参数 [1] = “/S”) _启动窗口.可视 = 假 时钟1.时钟周期 = 100 .默认 .判断结束 .默认 _启动窗口.可视 = 真 .判断结束 置托盘图标 (_启动窗口.图标, “个性美化桌面”) 透明度 = 到数值 (读配置项 (取运行目录 () + “\zunm.ini”, “桌面”, “透明度”, “255”)) 滑块条1.位置 = 透明度 标签2.标题 = 到文本 (透明度) 句柄 = 寻找顶级窗口 (“Shell_TrayWnd”, “”) 风格 = 取窗口风格 (句柄, -20) 风格 = 位或 (风格, 524288) 置窗口风格 (句柄, -20, 风格) 设置透明 (句柄, 0, 透明度, 2) n = 取得窗口 (句柄, 5) 开始句柄 = 取得窗口 (n, 0) 开始标题 = 读配置项 (取运行目录 () + “\zunm.ini”, “桌面”, “开始标题”, “开始”) 编辑框_当前标题.内容 = 开始标题 .如果真 (取标题 (开始句柄) ≠ 开始标题) 设置窗口标题 (开始句柄, 开始标题) .如果真结束 .如果 (注册项是否存在 (#本地机器, “SOFTWARE\Microsoft\Windows\CurrentVersion\Run\个性美化桌面”)) 选择框1.选中 = 真 .否则 选择框1.选中 = 假 .如果结束 .子程序 取标题, 文本型 .参数 窗口句柄, 整数型 .局部变量 名长, 整数型 .局部变量 名, 文本型 名长 = 取窗口标题长度 (窗口句柄) .如果真 (名长 ≤ 0) 返回 (“”) .如果真结束 名 = 取空白文本 (名长) 取窗体标题 (窗口句柄, 名, 名长 + 1) 返回 (名) .子程序 _按钮_确定_被单击 销毁 () .子程序 _按钮_应用_被单击 开始标题 = 到文本 (编辑框_修改标题.内容) 写配置项 (取运行目录 () + “\zunm.ini”, “桌面”, “开始标题”, 开始标题) 设置窗口标题 (开始句柄, 开始标题) .子程序 _滑块条1_位置被改变 透明度 = 到数值 (滑块条1.位置) 标签2.标题 = 到文本 (透明度) 写配置项 (取运行目录 () + “\zunm.ini”, “桌面”, “透明度”, 到文本 (透明度)) 设置透明 (句柄, 0, 透明度, 2) .子程序 _选择框1_被单击 .如果 (选择框1.选中) 写注册项 (#本地机器, “SOFTWARE\Microsoft\Windows\CurrentVersion\Run\个性美化桌面”, 取运行目录 () + “\” + 取执行文件名 () + “ /S”) .否则 删除注册项 (#本地机器, “SOFTWARE\Microsoft\Windows\CurrentVersion\Run\个性美化桌面”) .如果结束 .子程序 _时钟1_周期事件 .如果真 (取标题 (开始句柄) ≠ 开始标题) 编辑框_当前标题.内容 = 开始标题 设置窗口标题 (开始句柄, 开始标题) .如果真结束 .子程序 __启动窗口_托盘事件 .参数 操作类型, 整数型 .判断开始 (操作类型 = #单击右键) 弹出托盘菜单 (菜单) .判断 (操作类型 = #单击左键) .如果 (_启动窗口.位置 ≠ 0) _启动窗口.位置 = 0 ' 通常 鸣叫 () .否则 _启动窗口.位置 = 2 ' 最小化 .如果结束 .默认 .判断结束 .子程序 _显示窗口_被选择 _启动窗口.可视 = 真 .子程序 _隐藏窗口_被选择 _启动窗口.可视 = 假 .子程序 _退出_被选择 销毁 () .子程序 __启动窗口_位置被改变 .如果真 (_启动窗口.位置 = 2) _启动窗口.可视 = 假 .如果真结束
运行结果:
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接