0

このコードを使用して新しい行を作成できます

StringBuilder sb = new StringBuilder();  
sb.append("<span style=\"color:black\">--------------</span> <br>");  
sb.append("<span style=\"color:red\">Error." + e.toString() + "</span> <br>");
sshoutput.setContentType("text/html");  
sshoutput.setText(sb.toString());

しかし、別のテキストでこれをもう一度行うと、この後ではなく2番目のテキストのみが表示されます

エラーです。" + e.toString()

申し訳ありませんが、私の英語はうまくありません。お分かりできると良いのですが。

4

1 に答える 1

3

私は現在 JTextPane を使用していますが、私がしていることは次のとおりです。

JTextPane pane = new JTextPane();
StyledDocument doc = pane.getStyledDocument();

したがって、次を使用して任意の場所に文字列を挿入できます。

doc.insertString(STRING POSITION, STRING, null);

この方法には例外はありません。以下を使用して文字のスタイルを設定する簡単な方法もあります。

SimpleAttributeSet set = new SimpleAttributeSet();
//Here you modify set. Set is collection of
//various style instructions
//(letters color, bolded, italic, background color etc.)
//You modify set using StyleConstants class.
doc.setCharacterAttributes(START, LENGTH, set, true);

編集:テキスト ペインを作成し、「Hello World」のスタイルで書き込みを行う例:

JTextPane pane = new JTextPane();
StyledDocument doc = pane.getStyledDocument();
doc.insertString(0, "Hello", null);
SimpleAttributeSet set = new SimpleAttributeSet();
StyleConstans.setForeground(set, Color.RED);
doc.setCharacterAttributes(0, 5, set, true);
doc.insertString(5, "World!", null);
SimpleAttributeSet set = new SimpleAttributeSet();
StyleConstans.setForeground(set, Color.BLUE);
doc.setCharacterAttributes(5, 6, set, true);

これを GridLayout(1, 1) を使用して JPanel に追加すると、赤い文字列「Hello」と青い文字列「World」を含むテキスト ペインが表示されます。

于 2013-03-09T16:02:46.273 に答える