0

作为我的一个项目的一部分,我有一个 JTextPane 和一个 JButton。该按钮向 JTextPane 添加了一个项目符号点:

HTMLEditorKit.InsertHTMLTextAction bulletAction = new
    HTMLEditorKit.InsertHTMLTextAction("Bullet", "<li></li>",
    HTML.Tag.BODY, HTML.Tag.UL);  
JButton bulletButton = new JButton(bulletAction);

单击按钮时,将创建项目符号。如果您在带有项目符号的行上键入,然后再次单击该按钮,则会创建 2 个项目符号。但是,如果您不在项目符号点所在的行上键入,然后单击按钮,则只会输入 1。

为什么它有这个奇怪的创建故障?

4

1 回答 1

0

部分原因是 Swing 依赖段落在文档周围进行导航和光标定位。Swing 对 HTML 的处理有时也有问题,信不信由你。除非您覆盖 Swing 的默认行为,否则您几乎无能为力。

我在这里回答了一个类似的问题,以防您需要更多详细信息。另请参阅 Stephane 在同一页面上的答案以获取替代实现。希望有帮助。

于 2013-11-02T02:06:17.197 回答