这里以笔者的插件MyCode展示自定义弹框效果
核心实现类
1.JBPopupFactory
JBPopupFactory是IntelliJ 平台创建弹框的实现类,它支持根据不同需求显示不同类型的组件弹框。弹框可以设置标题、调整大小、复现上次打开弹窗的位置以及嵌套显示弹窗等,JBPopupFactory常用的方法如下所示:
函数 | 功能 |
---|---|
createComponentPopupBuilder() | 使用最多,允许您在弹出窗口中显示任何 Swing 组件 |
Createpupchooserbuilder () | 创建有多个选择项的弹窗 |
createConfirmation () | 创建有两个选型进行选择的弹框 |
因篇幅原因本节以创建多选项弹框以及自定义弹框两个简单实例展开讲解
创建多选项弹框
1. 创建效果
选择结果
2. 具体实现步骤
- 创建JBPopupFactory 实例
JBPopupFactory instance = JBPopupFactory.getInstance();
- 调用 JBPopupFactory 实例的 Createpupchooserbuilder () 方法
instance.createPopupChooserBuilder(@NotNull List<? extends T> var1);
- 添加监听事件及弹窗参数设定(标题、大小)
完整源码
public class HelloIdeaPlugin extends AnAction {
@Override
public void actionPerformed(AnActionEvent e) {
String[] data = new String[]{
"Java", "C#", "C++"};
List<String> list