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

[AU3基础] 右键菜单。选择某项后其在菜单内隐藏或者消失

  [复制链接]
发表于 2012-3-21 16:24:04 | 显示全部楼层 |阅读模式
悬赏20金钱已解决
有个想法,就是在右键菜单内。。比如我选择1后。在次选择的时候,选项内只剩2.3.4.但我再次选择2时,选项卡内又剩1.2.3。。不知道这样能不能实现。。。或者需要用到什么参数。。求指教
附件: 您需要 登录 才可以下载或查看,没有账号?加入

最佳答案

评分

参与人数 1金钱 +20 收起 理由
afan + 20 感谢主动将修改帖子分类为[已解决],请继续 ...

查看全部评分

发表于 2012-3-21 16:24:05 | 显示全部楼层
#include <GuiMenu.au3>
#include <Array.au3>

Opt('GUIOnEventMode', 1)
Local $aNum[4] = [1, 2, 3, 4]

GUICreate('右键菜单动态建立 by afan', 200, 100)
GUISetOnEvent(-3, '_Exit')
GUISetState()
$iLb = GUICtrlCreateLabel('', 50, 10, 60, 12)
GUIRegisterMsg(0x0111, '_WM_COMMAND')
GUIRegisterMsg(0x007B, '_WM_CONTEXTMENU')

While 1
        Sleep(100)
WEnd

Func _Exit()
        Exit
EndFunc   ;==>_Exit

Func _WM_COMMAND($hWnd, $iMsg, $iwParam)
        Switch $iwParam
                Case 1000 To 1004
                        $ix = _ArraySearch($aNum, Number($iwParam) - 1000)
                        _ArrayDelete($aNum, $ix)
                        GUICtrlSetData($iLb, GUICtrlRead($iLb) & Number($iwParam) - 1000)
                Case 1008
                        Dim $aNum[4] = [1, 2, 3, 4]
                        GUICtrlSetData($iLb, '')
        EndSwitch
EndFunc   ;==>_WM_COMMAND

Func _WM_CONTEXTMENU($hWnd)
        Local $hMenu = _GUICtrlMenu_CreatePopup()
        For $i = 0 To UBound($aNum) - 1
                _GUICtrlMenu_AddMenuItem($hMenu, $aNum[$i], 1000 + $aNum[$i])
        Next
        _GUICtrlMenu_AddMenuItem($hMenu, '')
        _GUICtrlMenu_AddMenuItem($hMenu, '重置', 1008)
        _GUICtrlMenu_TrackPopupMenu($hMenu, $hWnd)
        _GUICtrlMenu_DestroyMenu($hMenu)
EndFunc   ;==>_WM_CONTEXTMENU

评分

参与人数 2金钱 +42 贡献 +24 收起 理由
lpxx + 20 + 14 热心奖+技术奖
xyhqqaa + 22 + 10

查看全部评分

 楼主| 发表于 2012-3-21 17:34:47 | 显示全部楼层
回复 2# afan


    Afan哥。。嫁给我吧。。。。。作为一个职业的无耻伸手党。。。。谢谢。。。囧。。。好像每次都是您在帮忙。。。。。惭愧。。。。。。谢谢、、、、
发表于 2012-3-21 17:35:43 | 显示全部楼层
回复 3# xyhqqaa


    哥能嫁给你吗?哥只能嫁给妹~
 楼主| 发表于 2012-3-21 17:48:42 | 显示全部楼层
回复 4# afan
(*^__^*) 嘻嘻……
发表于 2012-3-22 09:08:47 | 显示全部楼层
没想到楼主还有这个嗜好!让A版嫁给你 ...让A版开坛说法还差不多
发表于 2012-3-29 12:28:46 | 显示全部楼层
怎样直接执行到右键菜单的程序呢?
是个dll
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-19 09:20 , Processed in 0.083347 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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