【发布时间】:2012-02-10 05:44:07
【问题描述】:
我使用以下代码在 JTable 单元格中显示图像。我有两个问题要在 jtable 单元格中添加图像。
1.如果我单击表格中的第一行,“Pointer.gif”图像将显示在该行。当我单击第二行时,“pointer.gif”图像将显示在第二行,第一个行获取“Blank.Gif”。然后我单击第三行,Pointer.gif 将显示在第三行,第二行从第一行获取“blank.gif”。此时第一行将变为空(这意味着第一行没有得到pointer.gif和blank.gif)。如何做到这一点?
2.第二个问题是,如果我选择第一行,pointer.gif 将显示在第一行。当我单击第二行时,pointer.gif 将移动第二行,第一行变空。怎么办这个?
我的问题是,当我使用以下代码时,“blank.gif”将显示在整个列中。当我单击特定行时,“pointer.gif”将显示在该位置。
class FRM_FLXD_ICON_ASSGN extends DefaultTableCellRenderer {
ImageIcon Icon;
public Component getTableCellRendererComponent(
JTable table, Object value, boolean selected, boolean focus,
int row, int col) {
if(selected == true){
Icon=new ImageIcon(getClass().getResource("pointer.gif"));
}
else{
Icon=new ImageIcon(getClass().getResource("blank.jpg"));
}
this.setIcon(Icon);
return this;
}
}
call this class like,
table1.getColumnModel().getColumn(0).setCellRenderer(new FRM_FLXD_ICON_ASSGN());
【问题讨论】:
-
如需尽快获得更好的帮助,请发布SSCCE。对于涉及图像的 SSCCE,热链接到它们,从 JRE 获取它们或在代码中生成它们。
标签: java swing icons jtable rendering