一个方法搞定在JTable里显示图片/JComponent的问题

一个方法搞定在JTable里显示图片/JComponent的问题

转自http://blog.matrix.org.cn/page/Kaizen/?anchor=jtable_%E6%98%BE%E7%A4%BA%E5%9B%BE%E7%89%87

JTable 显示图片

Posted on Saturday 2006年01月07日

今天在matrix上面看到的一个关于jtable显示图片的问题,以前我也没有实现过,今天在网上查找了半天,终于是有所了解。原来最基础的AbstractTableModel的getColumnClass不管你列中的类是什么都返回Object.class,而DefaultTableModel并没有覆盖这个方法,JTable中的DefaultTableCellRenderer对Object类的显示处理就是取Object.toString,然后将内容显示,所以不处理的话,程序将会显示图片路径.
所以需要继承AbstractTableModel 并覆写getColumnClass()
public Class getColumnClass(int c) //关键所在,取得对象类
{
   return getValueAt(0, c).getClass();
}

你可能感兴趣的:(一个方法搞定在JTable里显示图片/JComponent的问题)