当前位置: 首页 > 知识库问答 >
问题:

将RTF加载到JTextPane中

齐航
2023-03-14
public class RichTextEditor extends TextEditorPane {

private final String extension = ".rtf";
private final String filetype = "text/richtext";

public RichTextEditor() {
    // super( null, "", "Untitled", null );
    super();
    // this.setContentType( "text/richtext" );
}

/**
 * Constructor for tabs with content.
 * 
 * @param stream
 * @param path
 * @param fileName
 * @param color
 */
public RichTextEditor( FileInputStream stream, String path, String fileName, Color color, boolean saveEligible ) {
    super( path, fileName, color, saveEligible );
    super.getScrollableTracksViewportWidth();
    //RTFEditorKit rtf = new RTFEditorKit();
    //this.setEditorKit( rtf );
    setEditor();
    this.read(stream, this.getDocument(), 0);
    //this.read( stream, "RTFEditorKit" );
    this.getDocument().putProperty( "file name", fileName );
}



private void setEditor() {
    this.setEditorKit( new RTFEditorKit() );

}
this.read(stream, this.getDocument(), 0);

JEditorPane类型中的read(InputStream,Document)方法不适用于参数(FileInputStream,Document,int)

共有1个答案

那开济
2023-03-14

为了能够访问编辑器工具包,您应该保留对它的引用。事实上,您的seteditor()方法的名称是setxxx,所以这应该是一个setter(事实上,我不认为您需要多次设置它,所以可能根本不应该存在这个方法)。定义字段:

private RTFEditorKit kit = new RTFEditorKit();

然后在构造函数中,

setEditorKit( kit );
kit.read(...);

如果坚持保留该方法,则其代码应为

kit = new RTFEditorKit();
setEditorKit( kit );
 类似资料:
  • 我有一个9x9面板,它是每个面板都有一个JLabel,所以 我试过: 但是,我发现您很可能不能将“UndoableEditListener”添加到JLabels中。(对吗?) 我看到了一些可以将“UndoableEditListener”添加到JTextPane的示例,所以我想也许我可以创建一个JTextPane窗格[9][9],并将一个textpane添加到每个JLabel(添加到JPanel中

  • 问题内容: 我有一个扩展了并包含的类(如下所示)。我想重定向和我。我的课似乎没用。当我运行它时,它会重定向系统打印,但不会将它们打印到我的。请帮忙! 注意: 仅在应用程序启动时才重定向呼叫。但是,启动后的任何时间都不会将呼叫重定向到。(即,如果我将a放置在类中,它将被调用,但是如果将其放置在a中以供以后使用,则它不会重定向)。 问题答案: 管道流总是使我感到困惑,这就是为什么我的Message C

  • 我知道这个问题已经被问到这里了。但我面临着一些问题没有得到解决。 Error Domain=NSURLErrorDomain Code=-1001“请求超时。”userinfo={nsunderlyingError=0x60800084D950{Error domain=KCFNetwork code=-1001“请求超时。”userinfo={noj/library/developer/core

  • 我有一个JTextPane,我用以下方法设置它的文本。 我构建的内容字符串如下所示: 所以我让这个字符串正确地出现在JTextPane中,问题是当我将JTextPane的内容保存到一个txt文件并重新加载到JTextPane中时,每行后面都会出现一个新的空行。 图片如下:http://postimg.org/image/76z69oe7x/ 代码正在保存... 并加载: 如果此方法中没有/n,则如

  • 问题内容: 我们有一个水晶报表,我们需要将其作为电子邮件发送出去,但是从水晶报表生成的HTML几乎很丑陋,并且导致某些电子邮件客户端出现问题。我想将其导出为富文本格式,并尽可能将其转换为HTML。 有什么建议么? 问题答案: 我会在CodeProject RTFConverter上签出此工具。这个家伙很好地细分了程序的工作方式以及转换的细节。

  • 问题内容: 我正在尝试通过一种称为的方法设置项目,到目前为止还可以。但是后来我从中创建了一个arrayList,但我不知何故找不到将这些信息存储到JTable中的方法。问题是我找不到设置固定行数的方法 这是我的代码: 上课开始联赛: 足球俱乐部课程: SportsClub课程(摘要): 最后是LeagueManager,它是一个接口: 有人能帮帮我吗?我已经尝试了好几天。谢谢。 问题答案: “问题