我有一个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。
为什么会出现这种奇怪的创造故障?
答案 0 :(得分:0)
部分原因是Swing依赖段落在文档周围进行导航和光标定位。 Swing对HTML的处理有时也是错误的,不管你信不信。除非你覆盖Swing的默认行为,否则你几乎无能为力。
我在here上回答了类似的问题,以防您需要更多细节。另请参阅Stephane在同一页面上的替代实现的答案。希望有所帮助。