动态添加图像到JTable单元格

时间:2013-05-30 12:20:01

标签: java image swing jtable

我使用以下代码动态地向单元格添加数据:

for(int i = 0; i < matchedSlots.size(); i++)
{  
  String title = matchedSlots.get(i).getTitle();
   String director = matchedSlots.get(i).getDirector();
   int rating = matchedSlots.get(i).getRating();
   int runTime = matchedSlots.get(i).getRunningTime();

    DefaultTableModel tm = (DefaultTableModel) searchResults.getModel();    
    tm.addRow(new Object[] {title,director,rating,runTime});
 }

我需要添加到上面的内容才能在每行的第一个单元格中添加图像

2 个答案:

答案 0 :(得分:1)

ImageIcon image = new ImageIcon("image.gif");
...
tm.addRow(new Object[] {image,title,director,rating,runTime});

如果您尚未更新表格,则可能需要将其更改为新列。

这篇简短的文章可以帮助您使用图像渲染器:http://mdsaputra.wordpress.com/2011/06/13/swing-hack-show-image-in-jtable/

答案 1 :(得分:1)

默认情况下JTable可以呈现图片。您只需要覆盖TableModel中的getColumnClass()并返回第一列的Icon.class

请查看Renderers and Editors了解更多详情。