找回密码
 加入
搜索
查看: 2849|回复: 6

[AU3基础] 如何模拟操作托盘程序图标?[已解决]

  [复制链接]
发表于 2016-12-15 19:16:27 | 显示全部楼层 |阅读模式
本帖最后由 cashiba 于 2017-3-18 09:31 编辑

有些程序,比喻杀毒软件等,平时以图标形式常驻系统托盘中,左键或右键点击该图标,会弹出项目丰富的菜单而不是直接打开主界面。
有时不必要打开主界面,而直接通过上述弹出菜单选择需要的项目执行...
请问
这类最小化到托盘的程序,如何模拟(右键或左键)点击该程序的托盘图标,再在弹出的菜单中点击某项目?
以A大的函数询捕为例,如下图,如何实现:右键点击图标--->在弹出菜单中接着点击<关于>?
最好是能实现后台点击,总觉得通过前台鼠标定位点击的方法有些笨拙



下面是某杀毒软件的弹出菜单:

本帖子中包含更多资源

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

×
发表于 2016-12-16 13:36:15 | 显示全部楼层
看帮助啊。托盘右键菜单
#NoTrayIcon
#include <AutoItConstants.au3>
#include <MsgBoxConstants.au3>
#include <TrayConstants.au3> ; $TRAY_CHECKED 与 $TRAY_ICONSTATE_SHOW 常量定义文件.

Opt("TrayMenuMode", 3) ; 默认托盘菜单项目将不会显示, 当选定项目时也不检查. TrayMenuMode 的其它选项为 1, 2.

Example()

Func Example()
    ; 选择单选项目参数创建一个托盘项目.
    TrayCreateItem("单选框 1", -1, -1, $TRAY_ITEM_RADIO)
    TrayItemSetState(-1, $TRAY_CHECKED)
    TrayCreateItem("单选框 2", -1, -1, $TRAY_ITEM_RADIO)
    TrayCreateItem("单选框 3", -1, -1, $TRAY_ITEM_RADIO)

    TrayCreateItem("") ; 创建分隔线.

    Local $idAbout = TrayCreateItem("关于...")
    TrayCreateItem("") ; 创建分隔线.

    Local $idExit = TrayCreateItem("退出")

    TraySetState($TRAY_ICONSTATE_SHOW) ; 显示托盘菜单.

    While 1
        Switch TrayGetMsg()
            Case $idAbout ; 显示一个有关 AutoIt 版本和可执行文件安装路径的消息框.
                MsgBox($MB_SYSTEMMODAL, "", "AutoIt 托盘菜单示例." & @CRLF & @CRLF & _
                        "AutoIt 版本: " & @AutoItVersion & @CRLF & _
                        "安装路径: " & StringLeft(@AutoItExe, StringInStr(@AutoItExe, "", 0, -1) - 1)) ; 查找完整路径的文件夹.

            Case $idExit ; 退出循环.
                ExitLoop
        EndSwitch
    WEnd
EndFunc   ;==>Example
 楼主| 发表于 2016-12-16 18:09:45 | 显示全部楼层
看帮助啊。托盘右键菜单
229989799 发表于 2016-12-16 13:36

我不是问怎么创建托盘菜单,而是怎么用AU3自动选择执行第三方程序的托盘菜单及其项目....
发表于 2016-12-16 21:13:53 | 显示全部楼层
不靠鼠标点,难啊,除非软件开发的时候就给你留有接口.
cmdline,hotkey之类.

还是看软件了,
 楼主| 发表于 2016-12-18 10:03:17 | 显示全部楼层
以下虽然是小问题,但是也令人困扰哎

1、杀毒软件常常会不定时弹出消息界面,挡住目标窗口,影响操作。调出托盘杀软的右键菜单后,如何选择退出这个按钮或项目呢?
也就是如何定位并选择快捷菜单里面的项目的问题


2、输入法的悬浮窗口常常也会挡住目标窗口,并且常常自动切换到中文输入法
如何根据输入法状态使之自动切换保持英文输入状态呢?
也就是自动识别输入法状态并予以操控的问题

以上都是在其它电脑上使用AU3程序。要保持其它电脑的使用习惯或常态的前提下,想通过AU3临时改变到适合AU3小程序正常运行的状态,
所需要解决的小问题.....

本帖子中包含更多资源

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

×
发表于 2016-12-18 22:19:51 | 显示全部楼层
 楼主| 发表于 2016-12-19 12:54:21 | 显示全部楼层
heroxianf 发表于 2016-12-18 22:19

这个函数可以准确点击托盘图标调出快捷菜单,但是好像没法选择快捷菜单里的子项目.....
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-25 11:13 , Processed in 0.080197 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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