java-插入位置到JEditorPane的html中
作者:互联网
JEditorPane的getCaretPosition方法为html控件的仅文本部分提供了索引.是否有可能使索引进入html文本?
更具体地说,假设我有一个html文本(其中|表示插入号的位置)
abcd<img src="1.jpg"/>123|<img src="2.jpg"/>
现在getCaretPosition给出8,而我需要25来读出图像的文件名.
解决方法:
JEditorPane的基础模型(StyledDocument的某些子类,在您的情况下为HTMLDocument)实际上并未保存HTML文本作为其内部表示形式.相反,它具有包含样式属性的元素树.只有通过HTMLWriter运行该树后,它才会变为HTML.这使得您尝试做的事情有些棘手!我可以想象在您当前使用的character元素上放置一些flag属性,然后使用特制的HTMLWriter子类写出直到该标记并计数字符,但这听起来像是史诗般的骇客.可能有一种更简单的方法来获得您想要的东西,尽管我不清楚这到底是什么.
标签:jeditorpane,image,swing,caret,java 来源: https://codeday.me/bug/20191201/2084023.html