idea插件开发之在项目右键添加菜单

写在前面

本文看下如何在右键列表中增加菜单。

正戏

首先创建一个Action,要显示的menu选择ProjectViewPopupMenu,如下:

  • action
java 复制代码
public class CAction extends AnAction {

    @Override
    public void actionPerformed(AnActionEvent e) {
//        Messages.showInfoMessage("右键点击了", "提示");
        ShowSettingsUtil.getInstance().editConfigurable(e.getProject(), new MyLeftMenuSettingsUI());
    }
}
  • plugin.xml(注意是自动生成)
xml 复制代码
<action id="C" class="x.CAction" text="C" description="C">
    <add-to-group group-id="ProjectViewPopupMenu" anchor="first"/>
</action>

接着定义UI,注意要实现Configurable接口(这样才会有确定/取消按钮):

java 复制代码
public class MyLeftMenuSettingsUI implements Configurable {
    private JPanel topPanel;

    @Override
    public @Nls(capitalization = Nls.Capitalization.Title) String getDisplayName() {
        return "右键设置";
    }

    @Override
    public @Nullable JComponent createComponent() {
        return topPanel;
    }

    @Override
    public boolean isModified() {
        return true;
    }

    /**
     * 确定时调用
     * @throws ConfigurationException
     */
    @Override
    public void apply() throws ConfigurationException {
    }
}

然后运行测试:

写在后面

参考文章列表

相关推荐
程序员侠客行8 分钟前
Tomcat 从陌生到熟悉
java·tomcat·web
wertyuytrewm9 分钟前
Java 异常|Java Exceptions
java·开发语言
ProgramHelpOa11 分钟前
Amazon SDE Intern OA 2026 最新复盘|70分钟两题 Medium-Hard
java·前端·javascript
雪碧聊技术18 分钟前
深入理解 Java GC:从“房间清洁工”到解决系统卡顿实战
java·开发语言
大鹏说大话24 分钟前
Java并发编程核心:线程安全、synchronized与volatile的深度剖析
java·开发语言
迷藏49426 分钟前
# 发散创新:低代码开发新范式——用可视化逻辑构建企业级业务系统 在当今快速迭代的软件工程实践
java·python·低代码
JAVA+C语言28 分钟前
Java IO 流
java·开发语言
山川行35 分钟前
Python快速闯关8:内置函数
java·开发语言·前端·笔记·python·学习·visual studio
Java基基39 分钟前
sdkman 一键切换 JDK 版本管理工具
java·开发语言·sdkman
美好的事情能不能发生在我身上43 分钟前
Jmeter压测遇到的问题
java·分布式·jmeter