按键精灵
取窗口句柄
Global DDO, WX1, WX2, WY1, WY2, X, Y, Mouse1, Mouse2, Mouse3, ZhuXian, Speed, i, j, m, n, p |
DDO = Plugin.Window.Foreground() //得到当前窗口(DDO)的句柄 |
sRect = Plugin.Window.GetClientRect(DDO) //得到DDO窗口客户区的大小 |
MyArray = Split(sRect, "|") //分割窗口大小的字符串 |
WX1 = Clng(MyArray(0)): WY1 = Clng(MyArray(1)) //将分割的字符串分别赋值给变量 |
WX2 = Clng(MyArray(2)) : WY2 = Clng(MyArray(3)) |
X = WX2 / 2 + WX1 //得到DDO窗口客户区横向中心点坐标 |
Y = WY2 / 2 + WY1//得到DDO窗口客户区纵向中心点坐标 |
MessageBox "x1["& WX1 &"]y1["& WY1 &"]| x2["& WX2 &"]y2["& WY2 &"]" |
画准星
Declare Function 取设备句柄 Lib "user32" Alias "GetWindowDC" (ByVal hwnd As Long) As Long |
Declare Function 创建画笔对象 Lib "gdi32" Alias "CreatePen" (ByVal nPenStyle As Long, ByVal nWidth As Long, ByVal crColor As Long) As Long |
Declare Function 选入场景 Lib "gdi32.dll" Alias "SelectObject" (ByVal hwnd As Long,ByVal hwnd As Long) As Long |
Declare Function 指定画笔位置 Lib "gdi32" Alias "MoveToEx" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal x As Long) As Long |
Declare Function 画直线 Lib "gdi32" Alias "LineTo" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long |
Declare Function 删除对象 Lib "gdi32" Alias "DeleteObject" (ByVal hObject As Long) As Long |
//取设备句柄(窗口句柄)[返回设备句柄,整数型] |
//创建画笔对象(类型,宽度,颜色)[返回对象句柄] |
//选人场景(设备句柄,场景句柄) |
//指定画笔位置(设备句柄,X,Y,坐标结购) |
//画直线(设备句柄,终点X,终点Y) |
//删除对象(对象句柄) |
宽度 = Plugin.Sys.GetScRX()//此例程为在桌面屏幕画准心,所以取的是屏幕分辩率 |
高度 = Plugin.Sys.GetScRY() |
设备句柄 = 取设备句柄(0)//窗口句柄为0时,取屏幕设备句柄,如在指定窗口画就填写窗口句柄 |
对象句柄 = 创建画笔对象(1, 2, 255)//参数1为类型,参数2为线条粗细,参数3为10进制的颜色值(255是红色) |
TracePrint 选入场景(设备句柄, 对象句柄)//此操作相当于windows画图时鼠标选择了画笔按钮。 |
TracePrint 指定画笔位置(设备句柄,宽度\2-50,高度\2,0)//坐标结构不要使用,按键不支持此数据类型 |
TracePrint 画直线(设备句柄, 宽度 \ 2 + 50, 高度 \ 2)//画横线 |
TracePrint 指定画笔位置(设备句柄,宽度\2,高度\2-50,0)//坐标结构不要使用,按键不支持此数据类型 |
TracePrint 画直线(设备句柄, 宽度 \ 2, 高度 \ 2 + 50)//画竖线 |
TracePrint 删除对象(对象句柄)'画完以后记得释放对象,如果需要一直画就不要释放,循环重复以上4行 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义