发表回复 
问题·已解决 menu添加子菜单的两种方式及差异
2017-02-01, 23 : 01 (这个帖子最后修改于: 2017-06-05 00 : 17 by 火冷.)
menu添加子菜单的两种方式及差异
如图有两种添加子菜单的方式,
但方式2会多出了分隔线,用什么方式删除呢?
方式2的流程在读取配置生成菜单时更易用。
代码: (全选)
#SingleInstance Force
;添加两个项目,并设置A,B为热键
Menu, MyMenu, Add, Item1(&A), MenuHandler
Menu, MyMenu, Add, Item2(&B), MenuHandler

;方式1:子菜单把项目全添加后再添加到主菜单
;添加项目到子菜单MySubmenu1,格式和上面一样
;Menu, MySubmenu1, Add, Item3, MenuHandler
;Menu, MySubmenu1, Add, Item4, MenuHandler

;Menu, MyMenu, Add, My Submenu, :MySubmenu1

;方式2:先添加子菜单到主菜单,再给子菜单添加项目
Menu, MySubmenu1, Add ;比上个方法要多写这一句,副作用是子菜单第一项都有分隔符
Menu, MyMenu, Add, My Submenu, :MySubmenu1

Menu, MySubmenu1, Add, Item3, MenuHandler
Menu, MySubmenu1, Add, Item4, MenuHandler
Return

MenuHandler:
MsgBox You selected %A_ThisMenuItem% from the Menu %A_ThisMenu%.
Return

#k::Menu, MyMenu, Show


附件 缩略图
   
查找这个用户的全部帖子
表示感谢 引用并回复 移动视图置页面顶端
2017-02-08, 15 : 24 (这个帖子最后修改于: 2017-02-08 15 : 24 by robertL.)
RE: menu添加子菜单的两种方式及差异
Menu, MySubmenu1, Add添加了个分隔符。
当前不支持仅删除分隔符。
可以先任意添加一项(非分隔符),再删除它?
代码: (全选)
Menu, MySubmenu1, Add,newSub,MenuHandler
..
Menu, MySubmenu1, delete,newSub

One for all, but man for himself

帮推广:AHK知乎专栏
查找这个用户的全部帖子
表示感谢 引用并回复 移动视图置页面顶端
2017-02-11, 00 : 05
RE: menu添加子菜单的两种方式及差异
(2017-02-08 15 : 24)robertL 提到:  Menu, MySubmenu1, Add添加了个分隔符。

是啊,但是没有这句又不能添加到主菜单,看来还是有点缺陷~
查找这个用户的全部帖子
表示感谢 引用并回复 移动视图置页面顶端
2017-06-05, 00 : 16
RE: menu添加子菜单的两种方式及差异
代码: (全选)
#SingleInstance Force
;添加两个项目,并设置A,B为热键
Menu, MyMenu, Add, Item1(&A), MenuHandler
Menu, MyMenu, Add, Item2(&B), MenuHandler

;方式1:子菜单把项目全添加后再添加到主菜单
;添加项目到子菜单MySubmenu1,格式和上面一样
;Menu, MySubmenu1, Add, Item3, MenuHandler
;Menu, MySubmenu1, Add, Item4, MenuHandler
;Menu, MyMenu, Add, My Submenu, :MySubmenu1

;方式2:先添加子菜单到主菜单,再给子菜单添加项目
Menu, MySubmenu1, Add ;比上个方法要多写这一句,副作用是此命令还给子菜单添加了分隔符
Menu, MySubmenu1, DeleteAll ;所以要增加这一条来删除分隔符 NOTE
Menu, MyMenu, Add, My Submenu, :MySubmenu1
Menu, MySubmenu1, Add, Item3, MenuHandler
Menu, MySubmenu1, Add, Item4, MenuHandler
Return

MenuHandler:
MsgBox You selected %A_ThisMenuItem% from the Menu %A_ThisMenu%.
Return

#k::Menu, MyMenu, Show
[/code]
查找这个用户的全部帖子
表示感谢 引用并回复 移动视图置页面顶端
2018-05-24, 13 : 47
RE: menu添加子菜单的两种方式及差异
这个问题我也拖了很久,之前觉得解决很麻烦,不过后来解决起来意外的简单。
我先用了一种笨方法:添加一个不会重复的子菜单项,添加子菜单后再删除
代码: (全选)
Menu, MySubmenu1, Add,% Chr(3),临时使用
Menu, MyMenu, Add, My Submenu, :MySubmenu1
Menu, MySubmenu1, Delete,% Chr(3)

后来才发现AHK支持删除分割线:一样先添加,然后再删除,这样有子菜单同时不会有分割线

代码: (全选)
Menu, MySubmenu1, Add
Menu, MyMenu, Add, My Submenu, :MySubmenu1
Menu, MySubmenu1, Delete,1&
查找这个用户的全部帖子
表示感谢 引用并回复 移动视图置页面顶端
发表回复 


论坛跳转:


联系我们 | Autohotkey 中文站 | 回到顶部 | 回到正文区 | 精简(归档)模式 | RSS 聚合