• category: swing folder: HtmlCellVerticalAlignment title: TableCellRendererに複数行のHtmlテキストを表示する場合に行揃えを設定する tags: [JTable, TableCellRenderer, Html, JLabel] author: aterai pubdate: 2014-08-11T00:16:05+09:00 description: JTableのCellに複数行になるHtmlテキストを表示する場合の行揃えによる描画の変化をテストします。 image: https://lh5.googleusercontent.com/-Id-AlEWH0-M/U-eKsOPZf6I/AAAAAAAACLI/asLZtz0cOvk/s800/HtmlCellVerticalAlignment.png

概要

JTableCellに複数行になるHtmlテキストを表示する場合の行揃えによる描画の変化をテストします。

サンプルコード

((JLabel) table.getDefaultRenderer(Object.class)).setVerticalAlignment(SwingConstants.TOP);
View in GitHub: Java, Kotlin

解説

JTableのセルレンダラーとしてDefaultTableCellRenderer(JLabelを継承)を使用し、これに複数の行が存在するHtmlテキストを表示する場合、行揃え(VerticalAlignment)にSwingConstants.TOP以外が設定されていると、マウスドラッグによるセル選択で描画が乱れることがあります。

参考リンク

コメント