9

JLabel のタグにテキストが含まれている場合は常に、自動的に改行が適用されます (らしい)。私の要件は、ラベルに含まれるテキストに関係なく、ラベルの改行を常に無効にする必要があることです。従来の理由により、レンダラーで JTextArea を使用できません。

4

1 に答える 1

17
  1. <nobr></nobr>ラップしたくないHTMLコンテンツの周りにタグを使用できます
  2. 単純な非 HTML コンテンツは、JLabel 内にラップされることはありません

次に例を示します。

public static void main ( String[] args )
{
    JFrame frame = new JFrame ();
    frame.setLayout ( new BorderLayout () );

    final String html = "<html><body><nobr>CMV Antigenemia Stat X 2.0 dose(s)</nobr></body></html>";
    final String simple = "<html><body>CMV Antigenemia Stat X 2.0 dose(s)</body></html>";

    JTable table1 = new JTable ( new String[][]{ { html, html, html, html, html } }, new String[]{ html, html, html, html, html } );
    table1.setRowHeight ( 50 );
    frame.add ( table1, BorderLayout.NORTH );

    JTable table2 = new JTable ( new String[][]{ { simple, simple, simple, simple, simple } },
            new String[]{ simple, simple, simple, simple, simple } );
    table2.setRowHeight ( 50 );
    frame.add ( table2, BorderLayout.CENTER );

    frame.pack ();
    frame.setLocationRelativeTo ( null );
    frame.setVisible ( true );
}

ご覧のとおり、最初のテーブルの HTML コンテンツはラップされていません。

于 2012-10-15T12:05:48.037 に答える