- Menus 是菜单/工具栏的集合 。菜单是Commands的容器 。
- Groups 决定菜单的位置
- Buttons 表示命令按钮/菜单项
- Bitmaps 按钮/菜单项的图标配置
https://github.com/MicrosoftDocs/visualstudio-docs/blob/main/docs/extensibility/internals/designing-xml-command-table-dot-vsct-files.md
一级菜单
<Groups> <Group guid="guidMenuDemoVSIXPackageCmdSet" id="MyMenuGroup" priority="0x0600"> <!-- 这个guid和id决定了菜单的位置 --> <Parent guid="guidSHLMainMenu" id="IDM_VS_MENU_TOOLS"/> </Group></Groups>如果想要展示在vs的下面这些菜单里面,直接可以用上面的方式 修改id就可以了
文章插图
-》vs的最上面一排菜单#define IDM_VS_MENU_FILE 0x0080#define IDM_VS_MENU_EDIT 0x0081#define IDM_VS_MENU_VIEW 0x0082#define IDM_VS_MENU_PROJECT 0x0083#define IDM_VS_MENU_TOOLS 0x0085#define IDM_VS_MENU_WINDOW 0x0086#define IDM_VS_MENU_ADDINS 0x0087#define IDM_VS_MENU_HELP 0x0088#define IDM_VS_MENU_DEBUG 0x0089#define IDM_VS_MENU_FORMAT 0x008A#define IDM_VS_MENU_ALLMACROS 0x008B#define IDM_VS_MENU_BUILD 0x008C#define IDM_VS_MENU_CONTEXTMENUS 0x008D#define IDG_VS_MENU_CONTEXTMENUS 0x008E#define IDM_VS_MENU_REFACTORING 0x008f#define IDM_VS_MENU_COMMUNITY 0x0090#define IDM_VS_MENU_EXTENSIONS 0x0091-》 工程文件右键菜单 对应上图的13#define IDM_VS_CTXT_PROJNODE 0x0402-》代码窗口的右键菜单操作 对应上图的14#define IDM_VS_CTXT_CODEWIN 0x040D-》解决方案的右键菜单操作 对应上图的15#define IDM_VS_CTXT_SOLNNODE 0x0413-》 某个文件的右键菜单 这个也经常用#define IDM_VS_CTXT_ITEMNODE 0x0430各个含义说明也可以参考文档:https://learn.microsoft.com/en-us/visualstudio/extensibility/internals/guids-and-ids-of-visual-studio-menus?view=vs-2022
比如我把上面的demo改成这样
<Groups> <Group guid="guidMenuDemoVSIXPackageCmdSet" id="MyMenuGroup" priority="0x0600"> <!-- 工程文件右键菜单 --> <Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_PROJNODE"/> </Group></Groups>
经验总结扩展阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ppapiflash插件是啥 ppapi插件是什么
- 【pytest官方文档】解读-开发可pip安装的第三方插件
- Eclipse插件RCP桌面应用开发的点点滴滴
- 提高工作效率的神器:基于前端表格实现Chrome Excel扩展插件
- 苹果手机红包秒收怎么设置(苹果红包插件黑科技)
- 从0开始写一个简单的vite hmr 插件
- 钩子 【pytest官方文档】解读-插件开发之hooks 函数
- 插件化编程之WebAPI统一返回模型
- 超详细 R及R Studio下载安装教程
- 浅谈 Golang 插件机制
