/ / JTableセルレンダラー+選択ハイライト付きのJLabel +アイコンの使用 - java、swing、jtable、ハイライト

JLabel +アイコンを使用してJTableのcellrenderer + selection highlight - java、swing、jtable、highlight

私はいくつかのアイコンの1つを示すカスタムセルレンダラーを持つ1つの列を持つJTableがあります。

選択ハイライトが自動的に表示されないことを除けばうまく機能します。カスタムセルレンダラーでハイライトを適用する方法がわかりません。

助言がありますか?

回答:

回答№1は2

私はいくつかのアイコンの1つを示すカスタムセルレンダラーを持つ1つの列を持つJTableがあります。

JTableはアイコンの表示をサポートしています。アイコンをモデルに追加してからgetColumnClass(...)メソッドをオーバーライドしてIconを返すだけで、適切なレンダラーが使用されます。


回答№2の場合は1

あなたのレンダラーコードでは、あなたがする必要があります選択の場合は背景を明示的に設定します。これを行う通常の方法は、UIManagerにTable.backgroundとTable.selectionBackgroundの色を指定するように依頼することです。


回答№3の場合は0

getTableCellRendererComponent()メソッド内行がいつ選択されるかを示すパラメータ(boolean isSelected)があります。これを確認して、レンダラで自分自身を強調表示する必要があります。