gpt4 book ai didi

java - 将内联 JComponent 插入 JTextPane 中?

转载 作者:太空宇宙 更新时间:2023-11-04 08:49:03 24 4
gpt4 key购买 nike

我正在开发一个项目,需要能够将 JComponent 与普通文本一起插入到 JTextPane 中。目前,我正在使用 JTextPane.insertComponent(Component) 添加 JComponent,但是,它们似乎是零星添加的,没有真正的组织。我终于发现它会将其插入克拉所在的位置,因此我尝试将其设置在文本末尾。但是当我执行时:

int len = txtConsole.getText().length();
txtConsole.setCaretPosition(len - 1);

我收到一条错误消息,指出该位置无效。是否有一种简单或更好的方法将 JComponent 插入到 JTextPane 最后一行的末尾?

此外,如果上述情况可行,是否有办法更改 JComponent 与文本其余部分内联的位置,例如居中内联?

最佳答案

以下代码对我有用:

int offset = textPane.getDocument().getLength();
textPane.setCaretPosition(offset);
textPane.insertComponent( ... );

确保您的代码在 EDT 上执行。

如果您还有其他问题,请发布您的 SSCCE演示问题。

关于java - 将内联 JComponent 插入 JTextPane 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3744490/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com