找回密码
 加入
搜索
查看: 2061|回复: 4

[网络通信] 这种窗口的菜单和工具条怎么获取

[复制链接]
发表于 2020-3-22 21:53:37 | 显示全部楼层 |阅读模式
用autoit v3 window info查看的结果如图,为什么得到的是dockwnd?使用函数 _GUICtrlMenu_GetMenu()和_GUICtrlToolbar_FindToolbar,既得不到菜单也得不到工具条.哪位大师能指点一下。感激不尽。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2020-3-23 10:09:55 | 显示全部楼层

试下 mouseclick 模拟鼠标去相对位置点击。这虽然比较笨重。

举例
#RequireAdmin
#NoTrayIcon
Run("Notepad.exe")
WinWait("[CLASS:Notepad]", "")
WinActivate("[CLASS:Notepad]","")
Opt("MouseCoordMode", 0)
MouseClick("left",30,40,1)

发表于 2020-3-23 17:45:35 | 显示全部楼层
本帖最后由 xyx115 于 2020-3-23 17:57 编辑

模拟点击的时候,开启高级模式。直接根据类名和控件id等信息,可精准点击。ControlClick
发送鼠标点击命令到指定控件.
ControlClick ( "标题", "文本", 控件ID [, 按钮 = "left" [, 点击次数 = 1 [, X 坐标 [, Y 坐标]]]] )

ControlClick ( "窗口标题", "窗口文本", 控件ID [, 按钮] [, 点击次数]] )

ControlClick("系统属性", "", "Button2")
我说的就是下面这种。你的窗口属于标准windows 窗口,能够查询到相关属性,使用非常适合。
ControlClick ( "[CLASS:ToolbarWindow32]", "","[CLASS:ToolbarWindow32; INSTANCE:1]",'left', 1 )


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2020-3-23 18:05:20 | 显示全部楼层
刚才又看了一次你的问题,你用的这两个函数,都是针对AU3写的程序用的吧。或者说你的程序自身。对于其他语言编写的程序,你需要使用windos操作命令。例如:
WinGetPos
获取窗口的坐标位置和大小.


WinGetPos ( "标题" [, "文本"] )


WinGetText
获取窗口文本.


WinGetText ( "标题" [, "文本"] )


发表于 2020-3-25 15:05:41 | 显示全部楼层
控件点内部坐标应该可以点到。
ControlClick("AcroCAD Inspection","DockTop","ABSActiveBarDockWnd1","",1,176,26)


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-23 15:31 , Processed in 0.158334 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表