我有一个 JTextPane,它使用自定义 HTMLEditorKit 在使用 HTML 标记时嵌入一个摆动组件。当我单击此组件时,我希望将插入符号位置更新为该组件的位置。我可以在控件中获取焦点事件,但是我不知道如何将插入符号位置设置为该组件的位置。有谁知道怎么做?
问问题
525 次
2 回答
4
您可以获得单击组件的父级并使用parent.getBounds()
. 返回的矩形是 中的位置JTextPane
。获取坐标位置的插入符号位置的使用viewToModel()
方法。JTextPane
于 2013-05-17T05:58:11.640 回答
0
您需要 JTextPane 内容中嵌入组件的字符位置;如果没有更多细节,就无法猜测您将如何确定。然而,一旦你知道了组件的字符位置,就很简单了:
myTextPane.setCaretPosition(characterIndexOfEmbeddedComponent);
请参阅:http://docs.oracle.com/javase/7/docs/api/javax/swing/text/JTextComponent.html#setCaretPosition(int)
于 2013-05-16T20:28:14.237 回答