Q语言 我的命令库《通用找图》之后台找字函数源码
admin
2023-01-21 09:01:06
0

'=====================找字命令===============================

Function 找字B(字符串,字号,点X1, 点Y1, 点X2, 点Y2)
    //    后台找图
    Dim iZB, Xy
    XY = Plugin.Bkgnd.FindWordShape(Hwnd,clng(点X1), clng(点Y1), clng(点X2), clng(点Y2), 字符串, "", Cint(字号), 0,0.9)
    iZB = InStr(XY, "|")
    找字_intx=CLng(Left(XY, iZB - 1))
    找字_inty=CLng(Right(XY, Len(XY) - iZB)) 
    If 找字_intx >= 0 and 找字_inty >= 0 Then 
        日志运行内容 = V_当前程序 & "B-------------->找到文字:" & 字符串&"("&找字_intx&","&找字_inty&")"
        Call Lib.通用.输出日志(日志运行内容):TracePrint 日志运行内容
        找字B=1
    Else 
        日志运行内容 = V_当前程序 & "B未找到文字:" & 字符串
        Call Lib.通用.输出日志(日志运行内容) : TracePrint 日志运行内容
        找字B=0          
    End If
End Function

Function 找字点击B(字符串, 字号, 点X1, 点Y1, 点X2, 点Y2)
    Dim 返回值
    找字点击B=0
    返回值= 找字B(字符串,字号,点X1, 点Y1, 点X2, 点Y2)
    If 返回值 > 0 Then 
        Call Plugin.Bkgnd.MoveTo(Hwnd, 找字_intx + 5, 找字_inty +5)
        Delay 50
        Call Plugin.Bkgnd.LeftClick(Hwnd, 找字_intx+5, 找字_inty+5)
        //        Delay 50
        日志运行内容 = V_当前程序 & "B---------->点击文字:" & 字符串
        Call Lib.通用.输出日志(日志运行内容):TracePrint 日志运行内容          
        找字点击B = 1
    End If
End Function

Function 找多字B(字符串集,字号,点X1, 点Y1, 点X2, 点Y2)
    Dim I,返回值,字符串
    找多字B = 0
    找多字_intX = -1
    找多字_intY = -1
    字符串 = split(字符串集, "|")
    For i = 0 To ubound(字符串)
        返回值=找字B (字符串(i),字号,点X1, 点Y1, 点X2, 点Y2)
        If 返回值 > 0 Then 
            日志运行内容 =  V_当前程序&"找到:第" & cstr(i + 1) & "个字符:" & 字符串(i)
            Call Lib.通用.输出日志(日志运行内容):TracePrint 日志运行内容
            找多字_intX = 找字_intX
            找多字_intY = 找字_intY                
            找多字B=i+1
            Exit For
        End If
    Next
End Function

'----------------------以下为带句柄的后台找字-----------------------

Function 找字BC(句柄,字符串,字号,点X1, 点Y1, 点X2, 点Y2)
    //    后台找图
    Dim iZB, Xy
    XY = Plugin.Bkgnd.FindWordShape(句柄,clng(点X1), clng(点Y1), clng(点X2), clng(点Y2), 字符串, "", Cint(字号), 0,0.9)
    iZB = InStr(XY, "|")
    找字_intx=CLng(Left(XY, iZB - 1))
    找字_inty=CLng(Right(XY, Len(XY) - iZB)) 
    If 找字_intx >= 0 and 找字_inty >=0 Then 
        日志运行内容 = V_当前程序 & "C-------------->找到文字:" & 字符串&"("&找字_intx&","&找字_inty&")"
        Call Lib.通用.输出日志(日志运行内容):TracePrint 日志运行内容
        找字BC=1
    Else 
        日志运行内容 = V_当前程序 & "B未找到文字:" & 字符串
        Call Lib.通用.输出日志(日志运行内容) : TracePrint 日志运行内容
        找字BC=0          
    End If
End Function

Function 找字点击BC(句柄,字符串,字号,点X1, 点Y1, 点X2, 点Y2)
    Dim 返回值
    找字点击BC=0
    返回值= 找字C(句柄,字符串,字号,点X1, 点Y1, 点X2, 点Y2)
    If 返回值 > 0 Then 
        Call Plugin.Bkgnd.MoveTo(Hwnd, 找字_intx + 5, 找字_inty +5)
        Delay 50
        Call Plugin.Bkgnd.LeftClick(Hwnd, 找字_intx+5, 找字_inty+5)
        //        Delay 50
        日志运行内容 = V_当前程序 & "C---------->点击文字:" & 字符串
        Call Lib.通用.输出日志(日志运行内容):TracePrint 日志运行内容          
        找字点击BC = 1
    End If
End Function

Function 找多字BC(句柄,字符串集,字号,点X1, 点Y1, 点X2, 点Y2)
    Dim I,返回值,字符串
    找多字BC = 0
    找多字_intX = -1
    找多字_intY = -1
    字符串 = split(字符串集, "|")
    For i = 0 To ubound(字符串)
        返回值=找字BC(句柄,字符串(i),字号,点X1, 点Y1, 点X2, 点Y2)
        If 返回值 > 0 Then 
            日志运行内容 =  V_当前程序&"找到:第" & cstr(i + 1) & "个字符:" & 字符串(i)
            Call Lib.通用.输出日志(日志运行内容):TracePrint 日志运行内容
            找多字_intX = 找字_intX
            找多字_intY = 找字_intY                
            找多字BC=i+1
            Exit For
        End If
    Next
End Function

'---------------------------------------------

相关内容

热门资讯

俄军演练无人机新战法,防护境内... 俄军正在演练一套低成本、高效率的无人机新战法,用于对抗深入俄境内实施袭击的乌军无人机。凤凰记者卢宇光...
商场女厕壁画被指低俗,壁画中男... 近日,有网友反映,其于7月18日晚7时许在河北省石家庄市西美·花街生活工场二楼女卫生间内,发现墙上壁...
10条鱼4条有病?网友钓到“肿... 近日,有网友海钓到鱼身有明显肿块的海鱼,引发网友热议。视频中,网友展示其钓到的海鱼,接近鱼尾部处,有...
美请求在保加利亚部署加油机以支... 【环球网报道】保加利亚总理拉德夫20日称,保加利亚政府已收到美国在保加利亚贝兹梅尔空军基地部署至多8...
驻伊尔库茨克总领馆协助受伤台胞... 7月22日,国务院台办举行例行新闻发布会。有记者问,近日,有台胞在俄罗斯伊尔库茨克州附近遭遇车祸。中...
自己清洗油烟机的方法是什么? 自己清洗油烟机的方法是什么? 方法一,用肥皂兑少量的水,搅拌成浆糊来清洗。方法二,用洗洁精来清洗,这...
进水阀滤网的清洗方法 1、先将双手分别放在室内机两侧凹进去的地方,然后向上打开进风栅,就会看见里面的过滤网,卸下进水管。用...
全自动洗衣机的清洗方法有那些? 全自动洗衣机的清洗方法有那些?1、用双氧水+洗衣粉清洗洗衣机:将清水加至洗衣机高水位线,浸泡两小时左...
洗衣机清洗衣服方法是什么样的 洗衣机清洗衣服方法是什么样的首先将电源插上,打开顶部的盖板,将要洗的衣物放到洗衣机中。然后将进水口与...
清理洗衣机管子污垢的方法 洗衣机管子是连接水源和排水口的管道,经过长期使用与不当操作,易产生积垢、堵塞等情况。若不及时清理,会...