找回密码
 加入
搜索
查看: 4297|回复: 14

[AU3基础] 怎样获取记事本中的所有菜单和菜单项?

 火.. [复制链接]
发表于 2010-3-2 13:53:46 | 显示全部楼层 |阅读模式
怎样获取记事本中的所有菜单和菜单项?
发表于 2010-3-2 15:16:00 | 显示全部楼层
#include <GuiMenu.au3>
Run('Notepad.exe')
WinWaitActive('[CLASS:Notepad]')
$hWnd = WinGetHandle('[CLASS:Notepad]')
$hMain = _GUICtrlMenu_GetMenu($hWnd)
$str = ''
$n_Menu = _GUICtrlMenu_GetItemCount($hMain)
For $i = 0 To $n_Menu - 1
        $str &= _GUICtrlMenu_GetItemText($hMain, $i) & @CRLF & '==================' & @CRLF
        $hFile = _GUICtrlMenu_GetItemSubMenu($hMain, $i)
        $n_SubMenu = _GUICtrlMenu_GetItemCount($hFile)
        For $x = 0 To $n_SubMenu - 1
                $ss = _GUICtrlMenu_GetItemText($hFile, $x)
                If $ss = '' Then $ss = '————————————'
                $str &= '      ' & $ss & @CRLF
        Next
        $str &= @CRLF & @CRLF
Next
MsgBox(0, 0, $str)
WinClose($hWnd)

本帖子中包含更多资源

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

×
 楼主| 发表于 2010-3-2 15:55:06 | 显示全部楼层
回复 2# afan

     原来这样,十分感谢!*_*
     请问一下,有没有函数判断:当前菜单项是否可用?
发表于 2010-3-2 15:59:35 | 显示全部楼层
回复 3# nekin


_GUICtrlMenu_GetItemEnabled
获取菜单项可用状态

#Include <GuiMenu.au3>
_GUICtrlMenu_GetItemEnabled($hMenu, $iItem[, $fByPos = True])

参数
$hMenu
菜单句柄
$iItem
菜单项位置或标识
$fByPos
菜单认证标记:
真 - $iItem为0基的菜单位置
假 - $iItem为菜单项标识

返回值
真: 项目可用
假: 项目不可用
 楼主| 发表于 2010-3-2 18:21:35 | 显示全部楼层
回复 4# afan

    谢谢你啦!
    _GUICtrlMenu_GetItemEnabled:当菜单项是灰色的时候返回的也是true
   请问,怎么判断  菜单项是灰色(不可用)的状态啊?
 楼主| 发表于 2010-3-2 18:35:42 | 显示全部楼层
回复 5# nekin


    麻烦你了,刚才没看到_GUICtrlMenu_GetItemGrayed,嘿嘿
 楼主| 发表于 2010-3-2 18:47:53 | 显示全部楼层
回复 6# nekin


   为什么 _GUICtrlMenu_GetItemGrayed 返回的结果有的不对呢?
发表于 2010-3-2 21:41:00 | 显示全部楼层
学习了
发表于 2010-3-2 21:57:02 | 显示全部楼层
afan 真是高手!这都能做的到!佩服!
发表于 2010-3-3 06:55:29 | 显示全部楼层
说得不错 再看一次
发表于 2010-3-3 11:47:41 | 显示全部楼层
说得不错 再看一次
发表于 2010-3-5 11:31:35 | 显示全部楼层
正需要呢,太好了,收藏了!
发表于 2010-3-5 11:37:50 | 显示全部楼层
回复 2# afan


    afan 你好,我刚开始接触autoit,请问怎样获取 记事本 中的弹出式菜单的所有信息啊?比如说菜单、菜单项?我尝试了很多办法,没做出来!
发表于 2010-3-5 11:48:08 | 显示全部楼层
回复 13# hmily


    不懂你指的…… 2#不就是菜单、菜单项
发表于 2010-3-5 11:53:49 | 显示全部楼层
回复 14# afan


    我想获取的是 右键菜单的菜单项?比如说在记事本的编辑区,点击右键,弹出菜单的菜单项。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-5-21 01:40 , Processed in 0.092460 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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