提问人:hyelie 提问时间:11/17/2023 最后编辑:hyelie 更新时间:11/17/2023 访问量:33
IntelliJ 编辑器插件实现 - jtextpane 不可编辑
IntelliJ editor plugin implement - jtextpane is not editable
问:
我正在实现一个 IntelliJ 插件。我的代码继承了 FileEditor,当我以格式打开文件时,它将创建一个多行 JTextPane 来接受用户的输入。.md
我已经成功打印了多个JTextPane。正如我所希望的那样,当屏幕上显示多个 JTextPane 并且有边距时,它们会粘在顶部显示。
但是,当我运行代码时,它会输出几个字符串,但它们是不可编辑的。帮助。asdf
public class MyEditor implements FileEditor {
List<Block> list = new LinkedList<>();
Box interiorPanel = Box.createVerticalBox();
JPanel wrapper = new JPanel( new BorderLayout() );
JScrollPane scrollPane = new JScrollPane(wrapper);
public MyEditor(Project project, VirtualFile file) {
wrapper.add(interiorPanel, BorderLayout.PAGE_START);
for(int i = 0; i<4; i++){
Block block = new Block();
block.setText("asdf");
block.setEditable(true);
list.add(block);
}
}
@Override
public @NotNull JComponent getComponent() {
for(JTextPane elem : list){
elem.setEditable(true);
interiorPanel.add(elem);
}
return scrollPane;
}
...
Block 只是从 JTextPane 继承而来的。
public class Block extends JTextPane {
// nothing here yet
}
执行结果如上图所示。它们是可编辑的。
我尝试在 Java 中运行相同的代码,看看使用 swing 组件是否有问题,并且那里的输出很好。如下图所示,光标显示效果很好,文字可以在这里编辑。
我不知道为什么会出现这种差异。请帮帮我...
答: 暂无答案
评论