• 按键公众号 :
按键精灵电脑版
立即下载

软件版本:2014.06
软件大小:22.9M
更新时间:2021-12-03

按键精灵安卓版
立即下载

软件版本:3.7.2
软件大小:46.2M
更新时间:2023-05-10

按键精灵iOS版
立即下载

软件版本:1.8.0
软件大小:29.2M
更新时间:2023-03-21

按键手机助手
立即下载

软件版本:3.8.0
软件大小:262M
更新时间:2023-05-30

快捷导航

登录 后使用快捷导航
没有帐号? 注册

发新话题 回复该主题

用按键精灵实现窗口透明软件 [复制链接]

1#
在网络上有很多窗口透明的小软件,用按键精灵也能实现。
萌新一个,如果下面源码有可以改进的地方,请斧正。
需要自行将控件加上。
附上源码:


  1. //以下代码为将鼠标指向程序直接透明//
  2. GetCursorPos x,y
  3. Hwnd = Plugin.Window.MousePoint()
  4. GetColor = GetPixelColor(x, y)
  5. IfColor x,y,"5EAB25",0 Then
  6. Hwnd = Plugin.Window.Find(0, "按键精灵")
  7. End If
  8. Plugin.lxj_Plug.lxj_SetWindow Hwnd, 20
  9. WaitKey
  10. Plugin.lxj_Plug.lxj_SetWindow Hwnd,-1
  11. //以上代码为将鼠标指向程序直接透明//
  12. Event Form1.Load
  13. 计数 = 0
  14. Form1.Hotkey1.Register(true)//注册热键
  15. 屏幕y分辨率 = Plugin.Sys.GetScRY()'屏幕y分辨率
  16. 获取所有窗口句柄 = Plugin.Window.Search("")'获取当前所有窗口句柄 引号中为空代表全部
  17. 窗口句柄数组=split(获取所有窗口句柄,"|") '拆分所有窗口句柄
  18. 窗口句柄数量 = UBound(窗口句柄数组)'得到所有窗口句柄数量
  19. '---------------------------------------------------------------------------------
  20. Dim 标题(1000)

  21. For 循环变量 = 0 To 窗口句柄数量 - 1 '循环通过窗口句柄找窗口名
  22. 窗口名字 = Plugin.Window.GetText(窗口句柄数组(循环变量))
  23. '--------------------------------------------------------------------------------------

  24. 窗口大小 = Plugin.Window.GetClientRect(窗口句柄数组(循环变量))'窗口大小,用来忽略系统窗口做对比
  25. 窗口大小数组 = split(窗口大小, "|")
  26. '--------------------------------------------------------------------------------------
  27. 标题(循环遍量) = 窗口名字 & "|"'加|来分割名字

  28. Form1.ListBox1.AddItem (窗口名字 + "::::" + 窗口句柄数组(循环变量))'直接在窗口名字中加句柄了,因为按键目前好像
  29. '不支持列表中代数值,我也不想用数组,所以直接弄个符号,用分割来加入读取句柄

  30. 总=总&Cstr(标题(循环遍量))

  31. TracePrint 标题(循环遍量)
  32. 计数=计数+1


  33. Next
  34. TracePrint 总
  35. 最大下标 = 计数

  36. End Event

  37. Event Form1.Button1.Click
  38. Form1.Slider1.Value=0//令滚动条值归零
  39. Form1.ListBox1.List=""//清空之前的列表
  40. MessageBox "已恢复" //弹出提示窗口
  41. 获取所有窗口句柄 = Plugin.Window.Search("")'获取当前所有窗口句柄 引号中为空代表全部
  42. 窗口句柄数组=split(获取所有窗口句柄,"|") '拆分所有窗口句柄
  43. 窗口句柄数量 = UBound(窗口句柄数组)'得到所有窗口句柄数量
  44. For i = 0 To 窗口句柄数量 - 1'循环通过窗口句柄找窗口名
  45. Plugin.lxj_Plug.lxj_SetWindow 窗口句柄数组(i), 255 //所有窗口全部显示
  46. Next
  47. 计数 = 0
  48. 屏幕y分辨率 = Plugin.Sys.GetScRY()'屏幕y分辨率
  49. 获取所有窗口句柄 = Plugin.Window.Search("")'获取当前所有窗口句柄 引号中为空代表全部
  50. 窗口句柄数组=split(获取所有窗口句柄,"|") '拆分所有窗口句柄
  51. 窗口句柄数量 = UBound(窗口句柄数组)'得到所有窗口句柄数量
  52. '---------------------------------------------------------------------------------
  53. Dim 标题(1000)

  54. For 循环变量 = 0 To 窗口句柄数量 - 1 '循环通过窗口句柄找窗口名
  55. 窗口名字 = Plugin.Window.GetText(窗口句柄数组(循环变量))
  56. '--------------------------------------------------------------------------------------

  57. 窗口大小 = Plugin.Window.GetClientRect(窗口句柄数组(循环变量))'窗口大小,用来忽略系统窗口做对比
  58. 窗口大小数组 = split(窗口大小, "|")
  59. '--------------------------------------------------------------------------------------
  60. 标题(循环遍量) = 窗口名字 & "|"'加管道符|来分割名字

  61. Form1.ListBox1.AddItem (窗口名字 + "::::" + 窗口句柄数组(循环变量))'直接在窗口名字中加句柄了,因为按键目前好像
  62. '不支持列表中代数值,我也怪不得用数组,所以直接弄个符号,用分割来加入读取句柄

  63. 总=总&Cstr(标题(循环遍量))

  64. TracePrint 标题(循环遍量)
  65. 计数=计数+1


  66. Next
  67. TracePrint 总
  68. 最大下标 = 计数
  69. End Event
  70. Dim 控制
  71. 控制=0
  72. Event Form1.Slider1.Slide
  73. Plugin.lxj_Plug.lxj_SetWindow 窗口句柄数组(Form1.ListBox1.ListIndex), 255 - Form1.Slider1.Value//隐藏值最小0到255,滑块的值需要从小到大,所以直接用255减去滑块对应的值
  74. If Form1.CheckBox1.Value = 1 Then
  75. Plugin.lxj_Plug.lxj_SetWindow Hwnd,255-Form1.Slider1.Value//隐藏值最小0到255,滑块的的需要从小到大,所以直接用255减去滑块对应的值
  76. End If

  77. End Event
  78. Event Form1.Hotkey1.Hotkey
  79. GetCursorPos x,y
  80. Hwnd = Plugin.Window.MousePoint()
  81. GetColor = GetPixelColor(x, y)
  82. IfColor x,y,"5EAB25",0 Then
  83. Hwnd = Plugin.Window.Find(0, "按键精灵")
  84. End If
  85. 窗口名字 = Plugin.Window.GetText(Hwnd)

  86. End Event

复制代码

    已有2评分我要评分查看所有评分

    2#

    这个好 这个棒啊

    承接各类游戏脚本制作,post,手游,端游,办公,自动化

    有偿解决任何按键基础问题(可远程讲解、教会为止)

    如果我的回答能帮助了你,大家可以加个好友互相了解
    QQ : 262832680
    发新话题 回复该主题