私はJavaアプリケーションの中にJTableを持っていて、テーブルの最後の行の背景色を変更するカスタムレンダラーがあります。このように:JTableカスタムレンダラーを保持する方法は、ウィンドウのサイズを変更しますか?
:私は、ウィンドウのサイズを変更すると、それはこのようになります、しかしtable.setDefaultRenderer(Object.class, new DefaultTableCellRenderer(){
@Override
public Component getTableCellRendererComponent(JTable table,
Object value, boolean isSelected, boolean hasFocus, int row, int col) {
super.getTableCellRendererComponent(table, value, isSelected,
hasFocus, row, col);
String status = (String)table.getModel().getValueAt(row, 0);
if ("Total".equals(status)) {
setBackground(Color.GRAY);
setForeground(Color.WHITE);
}
this.setHorizontalAlignment(CENTER);
return this;
}
});
:
私は、カスタムレンダラのために次のコードであることを達成します
通常の状態に戻すには、テーブルをクリアしてアイテムを再度追加する必要があります。サイズ変更時の表の見た目?ありがとうございました。
ありがとうございました!私はスタックオーバーフローが今私がそれを受け入れることができないので、あなたの答えを5分で受け入れるでしょう。 –
@AlexandreKrabbe:まず、Camickrの常に優れた提案を重視しています。私からの彼の答えに1+の賛成投票。 –