以IntelliJ GUI形式添加动作侦听器时为空指针

时间:2019-02-12 10:33:25

标签: intellij-idea intellij-plugin

我正在使用IntelliJ GUI表单来创建一个工具窗口,作为IntelliJ插件的一部分。这是绑定到表单的类中的一些代码:

private JButton checkNifi;    

NifiToolWindow(ToolWindow toolWindow) {
    checkNifi.addActionListener(e -> toolWindow.hide(null));
}

我了解到,添加此动作侦听器后,按钮仍然为空,这就是问题所在,但是即使我执行checkNifi = new JButton("Some text");,空指针也会被抛出该行。

我应该添加我也有一个看起来像这样的ToolWindowFactory类:

@Override
public void createToolWindowContent(@NotNull Project project, @NotNull com.intellij.openapi.wm.ToolWindow toolWindow) {
    NifiToolWindow nifiToolWindow = new NifiToolWindow(toolWindow);
    ContentFactory contentFactory = new ContentFactoryImpl();
    Content content = contentFactory.createContent(nifiToolWindow.getContent(), "", false);
    toolWindow.getContentManager().addContent(content);
}

这取自此处的示例https://github.com/JetBrains/intellij-sdk-docs/tree/master/code_samples/tool_window/src/myToolWindow

任何帮助或想法都会很棒。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案,我在gui设计器中勾选了创建自定义框,但是有一个空的createGuiComponents()方法。因此它为空。