当前位置:   article > 正文

IntelliJ Platform-Plugins-右键单击弹出菜单,显示/隐藏子菜单(AnAction)_idea plugin add-to-group project 右键

idea plugin add-to-group project 右键

本文演示在Intellij平台下菜单插件开发,最终效果如下:当在这个类任意位置鼠标右键之后,菜单中会显示【我的三只兔子】菜单,鼠标悬停之后,会显示三个选项,分别是大抱二抱和三抱

在这里插入图片描述
非常的简单,首先在plugin.xml增加如下代码

<actions>
  <group id="随便写" text="我的三只兔子" popup="true">
  	<!-- 注意此处的EditorPopupMenu,可以用ctrl+鼠标点进去,这样就能知道还有哪些其他的group-id了 -->
    <add-to-group group-id="EditorPopupMenu" anchor="first"/>
      <action id="随便写1" class="com.enn.team2.MyAction" text="大抱"/>
      <action id="随便写2" class="com.enn.team2.MyAction" text="二抱"/>
      <action id="随便写3" class="com.enn.team2.MyAction" text="三抱"/>
  </group>
</actions>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

上面MyAction表示当点击任意菜单的时候,都会跳转到MyActionactionPerformed方法中,所以接下来我们创建MyAction类,该类必须继承AnAction

public class MyAction extends AnAction {

    @Override
    public void actionPerformed(@NotNull AnActionEvent e) {
        System.out.println("点了菜单");
        String m = e.getPresentation().getText();
        // 此处打印菜单名称,选"大抱"就打印"大抱"
        System.out.println(m);
    }
    
    // 注意update方法决定是否显示菜单
	@Override
    public void update(@NotNull AnActionEvent e) {
        Presentation presentation = e.getPresentation();
        PsiElement psiElement = e.getData(PlatformDataKeys.PSI_ELEMENT);
        Editor editor = e.getData(PlatformDataKeys.EDITOR);
        if (psiElement != null && editor != null) {
            IElementType elementType = psiElement.getNode().getElementType();
            // 如果光标所在位置是一个方法,则鼠标右键的时候,不显示菜单
            presentation.setEnabledAndVisible(false);
        }else {
            presentation.setEnabledAndVisible(true);
        }
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

到此结束了,点击右上角Plugin,然后运行,会弹出一个新的IDE,我这里用的IDEA,所以会弹出一个新的IDEA
在这里插入图片描述
下一篇:往当前文件第3行第12列插入Happy Birthday

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/680680
推荐阅读
相关标签
  

闽ICP备14008679号