IDEA插件开发注册菜单之向主菜单注册菜单项目

 更新时间:2021年04月16日 10:54:25   作者:wind_sssssssss  
这篇文章主要介绍了IDEA插件开发注册菜单之向主菜单注册菜单项目,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

1、配置xml

1.1 向主菜单添加

 <actions>
        <group id="TestMenu" text="_TestMenu" description="xxx">
        	<!-- 
        		这个应该很好理解, 添加到哪个组
        		group-id: 唯一
        		anchor: after / before / first / last
        	 -->
            <add-to-group group-id="MainMenu" anchor="last"/>
            <action id="TestAction1" class="com.wind.action.TestAction" text="测试菜单" description="xxx"/>
        </group>
    </actions>

1.2 向其它菜单添加

<!-- 
		如下效果为:
			TestMenu
			 - 测试菜单
			 - 测试子菜单
	-->
    <actions>
        <group id="TestMenu" text="_TestMenu" description="xxx">
            <add-to-group group-id="MainMenu" anchor="last"/>
            <action id="TestAction" class="com.wind.action.TestAction" text="测试菜单" description="xxx"/>
        </group>
        <group id="TestSubMenu1" text="_TestSubMenu" description="xxx">
        	<!-- 重点其实就是这里,想添加到哪就写对应的group-id -->
            <add-to-group group-id="TestMenu" anchor="last"/>
            <action id="TestSubAction1" class="com.wind.action.TestSubAction1" text="测试子菜单" description="xxx"/>
        </group>
    </actions>

2、Java代码

package com.wind.action;

import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.Messages;
import org.jetbrains.annotations.NotNull;

/**
 * @author wind
 * @Description 测试菜单执行类
 * @createDate 2021/4/13 13:55
 * @updateDate 2021/4/13 13:55
 */
public class TestAction extends AnAction {
    @Override
    public void actionPerformed(@NotNull AnActionEvent event) {
        Project project = event.getData(PlatformDataKeys.PROJECT);
        String txt = Messages.showInputDialog(
                project,
                "请输入测试内容",
                "测试标题",
                Messages.getQuestionIcon()
        );

        System.out.println(txt);
    }
}

3、结果展示

  • 白色主题为启动的插件测试界面
  • 黑色主题为编写代码的界面

实际效果
实际效果
实际效果 

无任何商业用途,无任何侵权想法。但如发现侵权或其它问题请及时与本人取得联系。本人会在第一时间进行对应删除或修改。

作者: wind
csdn: https://blog.csdn.net/com_study

在这祝大家工作开心^_^

到此这篇关于IDEA插件开发注册菜单之向主菜单注册菜单项目的文章就介绍到这了,更多相关idea注册菜单内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 了解java Struts拦截器的相关操作

    了解java Struts拦截器的相关操作

    Struts为我们实现了很多的功能,比如数据自动封装,文件上传功能阿。Struts为我们提供的这些功能都是通过拦截器完成的。下面我们来详细了解一下吧
    2019-06-06
  • java与c#的语法区别详细介绍

    java与c#的语法区别详细介绍

    由C#转入Java一段时间了,总结下个人认为的Java同C#语法之间的不同之处,有不同意见之处还望各位海涵,刚学Java时觉得语法同C#大致是相同的(应该说C#同Java大致相同
    2012-11-11
  • SpringBoot使用jasypt加解密密码的实现方法

    SpringBoot使用jasypt加解密密码的实现方法

    这篇文章主要介绍了SpringBoot使用jasypt加解密密码的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • java使用Filter实现自动登录的方法

    java使用Filter实现自动登录的方法

    这篇文章主要为大家详细介绍了java使用Filter实现自动登录的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • JAVA 运算符归纳总结

    JAVA 运算符归纳总结

    这篇文章主要对Java语法基础之运算符进行了详细的归纳总结,需要的朋友可以参考
    2017-04-04
  • Spring Boot实现JWT token自动续期的实现

    Spring Boot实现JWT token自动续期的实现

    本文主要介绍了Spring Boot实现JWT token自动续期,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • 详解Java中雪花算法的实现

    详解Java中雪花算法的实现

    雪花算法是一种分布式的id生成算法。原理是将long分成若干个区段分别管理。本文将利用Java简单的实现雪花算法,感兴趣的可以了解一下
    2022-12-12
  • JavaSe和JavaEE的区别原理面试题精讲

    JavaSe和JavaEE的区别原理面试题精讲

    这篇文章主要为大家介绍了JavaSe和JavaEE的区别原理面试题精讲,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • 如何将Java枚举名称作为注解的属性值实现详解

    如何将Java枚举名称作为注解的属性值实现详解

    这篇文章主要为大家介绍了如何将Java枚举名称作为注解的属性值实现详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • Java Eclipse进行断点调试的方法

    Java Eclipse进行断点调试的方法

    本篇文章主要介绍了Java Eclipse进行断点调试的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11

最新评论