0

私のコードには、文字列をフォーマットし、html/css タグを追加してから、テキストを JTextPane に追加する部分があります。次のように、一部のパネルのコンストラクターで textPane を作成します。

    public PnlSmartCommands(ServerLogFormatter formatter, ServerCommandsComponent container){
    setLayout( new java.awt.BorderLayout() );
    this.container = container;
    txtServerCommands = new JTextPane();
    txtServerCommands.setContentType("text/html");
    scpServerCommands = new JScrollPane( );
    this.formatter = formatter;
    scpServerCommands.setViewportView( txtServerCommands );
    scpServerCommands.getVerticalScrollBar().setUnitIncrement(16);
    scpServerCommands.getHorizontalScrollBar().setUnitIncrement(50);
    add( scpServerCommands, java.awt.BorderLayout.CENTER );
    txtServerCommands.setEditable(false);
    loadRules(txtServerCommands);

ArrayList から以前のすべての要求を取得し、見つかったすべての HTML タグを削除して書式設定し、新しい HTML タグと BODY タグを追加してから、.setText(String arg0) を使用してテキストを設定する書式設定関数を使用して、ペインにテキストを追加します。 JTextPane に。

    public String formatMemoryString(){
    StringBuilder sb = new StringBuilder();
    sb.append("<html>");
    sb.append("<body>");
    for(int i=0;i<logMemoryHolder.size(); i++){
        sb.append(logMemoryHolder.get(i));
        if(!(i==logMemoryHolder.size())){
            sb.append("<br>");
        }
    }
    sb.append("</body>");
    sb.append("</html>");
    return sb.toString();

ここで問題があります。応答は常に、1 行ではなく、複数行にわたってボックスに収まります。これは実際には良いことですが、1 行にまたがる機能を追加する必要があります。! http://i.stack.imgur.com/zy4yC.jpg - これが現在の外観です。値を 1 行として書式設定するチェックボックスを追加するか、textPane でそのようにできるようにしたいと思います。どうすればそれを行うことができますか?ペインに入力した HTML は次のとおりです。 http://www.upload.ee/files/3501071/testHtml.html.html よろしくお願いします。

4

0 に答える 0