菜单是我们日常使用中最长使用的方式之一,优点是节约空间,同时兼顾直观大方,也是我们ahk程序员设计过程中绕不过去的地方,今天我们这一关就是菜单的设计大赛了,朋友们,都亮出你们的绝技吧!!
参考代码:
/* 脚本说明:以最少的代码快速创建自己的菜单; zhanglei1371 */ CreateMenu(菜单名,菜单项目,图标:="",第几个图标=0,子菜单=0,路径=""){ 图标:=(图标=""?路径:图标) fn:=Func("标签函数").bind(路径,菜单名,菜单项目) if 子菜单=0 Menu,%菜单名%,add,%菜单项目%,%fn% else Menu,%菜单名%,add,%菜单项目%,:%菜单项目% ;%fn% SplitPath,图标,,,fileext if(fileext~="jpg|jpeg|ico|png|gif|bmp") Menu,%菜单名%,Icon,%菜单项目%,%图标% else Menu,%菜单名%,Icon,%菜单项目%,%图标%,%第几个图标% } 标签函数(路径,菜单名,菜单项目){ if 路径= gosub,%菜单项目% else Run, %路径% } ;~ 使用示例: numpad0:: SetWorkingDir,%A_ScriptDir%\图标 ;脚本目录建立个图标文件夹 CreateMenu("代码片段","代码片段1","shell32.dll",131,0) ;三级菜单 CreateMenu("插入代码","代码片段","shell32.dll",151,1) ;二级子菜单 CreateMenu("插入代码","运行记事本","shell32.dll",151,0,"notepad") ;二级子菜单 CreateMenu("VBE","插入代码","ie.jpg",,1) ;一级菜单 Menu,VBE,show return 代码片段1: MsgBox 插入代码! return
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
看来这一关还是太难了!!
/*
随手弄出来的
没有任何实际意义
只是为了答题
嗯,就是因为今天是星期天
*/
/*突然发现编辑器还需要html标签啊,我是用的假的编辑器吗?*/
;creat a menu
Creatmenu(mymenu)
;menu's features
;show menu
#z::
showmenu(mymenu)
return
;Function
Creatmenu(menuname){
menu ,menuname ,add ,a
menu ,menuname ,add ,b
menu ,menuname ,add ,c
}
showmenu(menuname){
menu ,menuname ,show
}
;labels
a:
msgbox ,This is a
return
b:
msgbox ,This is b
return
c:
msgbox ,This is c
return
居然可以用这个方式把ahk脚本做成工具集。我居然没想过这事