当前位置:百问九>生活百科>Hwnd=Plugin.Window.Find("notepad",0)

Hwnd=Plugin.Window.Find("notepad",0)

2024-09-24 10:27:34 编辑:zane 浏览量:541

Hwnd=Plugin.Window.Find(

简单点说吧。以记事本为例,要实现按键1需要找子窗口句柄,用语句:

//得到鼠标指向的窗口句柄

Hwnd = Plugin.Window.MousePoint()

当然你需要事先把鼠标放到记事本客户区内。如果你放到了标题栏那里,它得到的就是父窗口的句柄,那么下面针对客户区的命令就无法实现。

后台无限按1的完整命令:

//得到鼠标指向的窗口句柄

Hwnd = Plugin.Window.MousePoint()

Do//无限循环开始

Call Plugin.Bkgnd.KeyPress(Hwnd, 49)//按键1

Delay 100//延时

Loop//

不懂再追问

Rem cx

Hwnd = Plugin.Window.Find("Notepad", 0)

If len(Hwnd) < 4 Then

Call RunApp("notepad.exe")

Delay 1500

Goto cx

End If

Hwnd = Plugin.Window.FindEx(Hwnd, 0, "Edit", 0)

Do

Call Plugin.Bkgnd.KeyPress(Hwnd, 49)

Delay 100

Loop

窗口句柄是每一次数值不一样的

比如你现在的句柄是123456 那当你把文本文档关掉重新打开 那就可能变成234567 (每一次句柄数值都不一样)

父窗口就是文本文档整个窗口(包括标题、边框、和纵多子窗口)

拿文本文档这一例来说 :父窗口=标题+边框+子窗口(整个空白区)

如果你想要获得父窗口的话 用下面这代码就能实现

Hwnd = Plugin.Window.Find(窗口类名, "你要获取的窗口标题自己填写")

这一步获取到的是父窗口 并不能操作 我们就要根据父窗口来查找可操作的子窗口

Hwnds = Plugin.Window.FindEx(父窗口句柄, 子窗口句柄 "子窗口类名", 匹配标题)

得到子窗口句柄就能进行操作了

Call Plugin.Bkgnd.KeyPress(Hwnd, 49)

这句话是向子窗口按1键

全部的流程 给你梳理一遍

================================================

Hwnd = Plugin.Window.Find("Notepad", 0)

Hwnds = Plugin.Window.FindEx(Hwnd, 0, "Edit", 0)

do

delay 100

Call Plugin.Bkgnd.KeyPress(Hwnd, 49)

loop

============================================

另一种是直接用鼠标获取

==============================================

Hwnd = Plugin.Window.MousePoint()

do

delay 100

Call Plugin.Bkgnd.KeyPress(Hwnd, 49)

loop

============================================

太简单了,本尊不屑回答。

版权声明:文章由 百问九 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.baiwen9.com/life/401043.html
热门文章
二维码