0
私は、必要なテーブルにアイコンを入れるためにオーバーライドするJTableを作成しています。これは私がやったことです。しかし結果は、最初のセルだけでなく、すべてのセルにアイコンを印刷し、私が望むものではありません。ここで結果ているものです。アイコンの繰り返しを停止する
import com.skype.User;
import javax.swing.*;
import javax.swing.table.DefaultTableCellRenderer;
import java.awt.*;
class BoardTableCellRenderer extends DefaultTableCellRenderer {
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int col) {
Component c = super.getTableCellRendererComponent(table, value,
isSelected, hasFocus, row, col);
JLabel label = (JLabel)super.getTableCellRendererComponent(table, value,isSelected, hasFocus,row, col);
//row is the username
if(col == 0) {
try {
User temp = Functions.returnUser(value.toString());
ImageIcon imageIcon = new ImageIcon(getClass().getResource("/" + temp.getStatus().toString() + ".png"));
label.setIcon(imageIcon);
} catch (Exception ex) {
}
return label;
}else{
return c;
}
}
}