java - 更改 StyledDocument 中的特定字符串属性

标签 java swing text-editor jtextpane styleddocument

我正在尝试创建一个文本编辑器。我正在使用带有 StyledDocument 的 JTextPane。我正在尝试实现的是一种更改所选文本属性的方法。

这按以下方式工作:用户输入所需的文本。之后,他可以更改任何字符串的属性(字体系列、字体大小、是否为粗体/斜体),方法是选择它并按下按钮,然后通过复选框和下拉列表选择所需的更改。

我是否可以在不需要重建文档的情况下更改所选字符串的属性?我一直在搜索,但无法找到合适的解决方案。

最佳答案

您将使用 StyledDocument 的 setCharacterAttributes 方法。

这是我的一个 Swing 应用程序的示例,它使用高亮颜色突出显示文本。

        StyleContext sc = StyleContext.getDefaultStyleContext();
        AttributeSet aset = sc.addAttribute(
                SimpleAttributeSet.EMPTY,
                StyleConstants.Foreground, highlightColor);
        cobolProgram.setCharacterAttributes(offset, length, aset,
                false);

您可以使用其他 StyleConstants 来更改其他样式属性。

关于java - 更改 StyledDocument 中的特定字符串属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14198787/

相关文章:

java - 如何在 MyBatis 中动态选择 resultMap 并将递增的整数值附加到 "non-existent"列?

java - Hibernate mysql 测试

java - 为什么不可能有效地覆盖 Swing 的 setEnabled?

java - 关闭连接池中的数据库连接

java - 某些 HTTP 请求不会显示在 Fiddler 中

java - 从 JPanel 创建小图像

java - 为自定义驱动程序创建 GraphicsDevice

programming-languages - 指示文件中的编程语言,不带扩展名

vim - 在编辑器中查看换行符和回车符

text - Sublime Text 2 : View working directory/directory of file