|
因为最近要用自绘窗口的获取消息问题,但是目前自绘窗口_解析没有层级搜索的关系,所以自己写一个自绘窗口的Accessible定位。
不多bb,直接上代码吧
|
自绘窗口_Accessible定位 | 类_Accessible | | |
Accessible | 类_Accessible | | | | 表达式 | 文本型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 子表达式 | 文本型 | | 0 | i | 整数型 | | | command | 文本型 | | | opertor | 文本型 | | | childcount | 整数型 | | | Accessibles | 类_Accessible | | 0 | j | 整数型 | | | found | 逻辑型 | | | 计次循环首 (文本_分割文本 (表达式, “>”, , 子表达式 ), i )opertor = 取文本左边 (子表达式 [i ], 1 )command = 取文本右边 (子表达式 [i ], 取文本长度 (子表达式 [i ]) - 1 )childcount = Accessible. 枚举子元素 (Accessibles )判断 (opertor = “#”)如果 (到整数 (command ) > childcount )返回 (Accessible )Accessible = Accessibles [到整数 (command )]判断 (opertor = “?”)found = 假 计次循环首 (childcount, j )如果真 (内部_解析命令 (command, Accessibles [j ])) Accessible = Accessibles [j ]found = 真 跳出循环 ()计次循环尾 ()如果真 (found = 假)返回 (Accessible )计次循环尾 ()返回 (Accessible )|
内部_解析命令 | 逻辑型 | | |
command | 文本型 | | | | Accessible | 类_Accessible | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | k | 整数型 | | | equal | 文本型 | | 0 | contain | 文本型 | | 0 | 详细信息 | 精易_详细信息 | | | child_commands | 文本型 | | 0 |
详细信息 = 自绘窗口_格式化信息 (Accessible )child_commands = 分割文本 (command, “&”, )计次循环首 (取数组成员数 (child_commands ), k )判断 (寻找文本 (child_commands [k ], “==”, , 假) ≠ -1 )equal = 分割文本 (child_commands [k ], “==”, )判断 (equal [1 ] = “n”)如果真 (详细信息.控件名称 ≠ equal [2 ])返回 (假)判断 (equal [1 ] = “s”)如果真 (详细信息.控件状态 ≠ equal [2 ])返回 (假)判断 (equal [1 ] = “t”)如果真 (详细信息.控件类型 ≠ equal [2 ])返回 (假)判断 (equal [1 ] = “id”)如果真 (详细信息.控件ID ≠ equal [2 ])返回 (假)判断 (equal [1 ] = “v”)如果真 (详细信息.控件值 ≠ equal [2 ])返回 (假)判断 (寻找文本 (child_commands [k ], “=”, , 假) ≠ -1 )contain = 分割文本 (child_commands [k ], “=”, )判断 (contain [1 ] = “n”)如果真 (寻找文本 (详细信息.控件名称, contain [2 ], , 假) = -1 )返回 (假)判断 (contain [1 ] = “s”)如果真 (寻找文本 (详细信息.控件状态, contain [2 ], , 假) = -1 )返回 (假)判断 (contain [1 ] = “t”)如果真 (寻找文本 (详细信息.控件类型, contain [2 ], , 假) = -1 )返回 (假)判断 (contain [1 ] = “id”)如果真 (寻找文本 (详细信息.控件ID, contain [2 ], , 假) = -1 )返回 (假)判断 (contain [1 ] = “v”)如果真 (寻找文本 (详细信息.控件值, contain [2 ], , 假) = -1 )返回 (假)计次循环尾 ()返回 (真)
使用演示:
变量名 | 类 型 | 静态 | 数组 | 备 注 | 局_句柄 | 整数型 | | | Accessible | 类_Accessible | | | 定位后Accessible | 类_Accessible | | | 详细信息 | 精易_详细信息 | | |
局_句柄 = 窗口_取句柄 (, , “ChatWnd”, 编辑框1.内容 )Accessible. 创建自窗口句柄 (局_句柄 )定位后Accessible = 自绘窗口_Accessible定位 (Accessible, “?t==客户端&s==正常>#1>#1>#2>#1>#1>#2>#1>#1”)详细信息 = 自绘窗口_格式化信息 (定位后Accessible )调试输出 (详细信息.控件名称, 详细信息.控件状态, 详细信息.控件类型, 定位后Accessible. 取子元素总数 ())
|
评分
-
查看全部评分
|