实现TableCellRenderer就可以了吧,继承自JLabel
class IconTableRender extends JLabel implements TableCellRenderer{
    
public Component getTableCellRendererComponent(JTable jtblTable,
            Object oValue,
            boolean bIsSelected,
            boolean bHasFocus,
            int iRow,
            int iColumn){
    }
}

解决方案 »

  1.   

    可以看看jdk/demo/jfc/SwingSet2中的JTable例子
      

  2.   

    把分给我吧,快结贴,:)
    程序绝对没问题,别和我说你看不懂import java.awt.*;
    import java.awt.event.*;
    import java.awt.image.*;
    import javax.swing.*;
    import javax.swing.table.*;
    public class AnimatedIconTableExample extends JFrame {  public AnimatedIconTableExample(){
        super( "AnimatedIconTable Example" );
        
        final Object[][] data =  new Object[][]{
          {new ImageIcon("images/3-40.gif"),new ImageIcon("images/3-119.gif")},
          {new ImageIcon("images/3-41.gif"),new ImageIcon("images/3-6.gif")}};
        final Object[] column = new Object[]{"Boy and Girl","Dog and Cat"};
            
        AbstractTableModel model = new AbstractTableModel() {
          public int getColumnCount() { return column.length; }
          public int getRowCount()    { return data.length; }
          public String getColumnName(int col) {
           return (String)column[col]; 
          }
          public Object getValueAt(int row, int col) { 
            return data[row][col]; 
          }
          public Class getColumnClass(int col) {
            return ImageIcon.class;
          }
        };
            
        JTable table = new JTable( model );
        table.setRowHeight(50);
        setImageObserver(table);
        JScrollPane pane = new JScrollPane(table);
        getContentPane().add(pane);
      }
        
      private void setImageObserver(JTable table) {
        TableModel model = table.getModel();
        int colCount = model.getColumnCount();
        int rowCount = model.getRowCount();
        for (int col=0;col<colCount;col++) {
          if (ImageIcon.class == model.getColumnClass(col)) {
            for (int row=0;row<rowCount;row++) {
              ImageIcon icon = (ImageIcon)model.getValueAt(row,col);
              if (icon != null) {
                icon.setImageObserver(new CellImageObserver(table, row, col));
              }
            }
          }
        }
      }
        
      class CellImageObserver implements ImageObserver {
        JTable table;
        int row;
        int col;
          
        CellImageObserver(JTable table,int row, int col) {
          this.table = table;
          this.row   = row;
          this.col   = col;
        }
        
        public boolean imageUpdate(Image img, int flags,
           int x, int y, int w, int h) {
          if ((flags & (FRAMEBITS|ALLBITS)) != 0) {
            Rectangle rect = table.getCellRect(row,col,false);
            table.repaint(rect);
          }
          return (flags & (ALLBITS|ABORT)) == 0;
        }
      }  public static void main(String[] args) {
        AnimatedIconTableExample frame = new AnimatedIconTableExample();
        frame.addWindowListener(new WindowAdapter() {
          public void windowClosing(WindowEvent e) {
            System.exit(0);
          }
        });
        frame.setSize( 300, 150 );
        frame.setVisible(true);
      }
    }
      

  3.   

    刚才还没有写完,:)
    实现TableCellRenderer就可以了吧,继承自JLabel
    class IconTableRender extends JLabel implements TableCellRenderer{
        //重写这个方法
        public Component getTableCellRendererComponent(JTable jtblTable,
                Object oValue,
                boolean bIsSelected,
                boolean bHasFocus,
                int iRow,
                int iColumn){
            //这需要你把表格中的value定义一个类,包含Icon信息
            this.setIcon(oValue中应该得到这个Icon)
            return this;
        }
    }
    就这么简单,还有什么不明白的吗?
      

  4.   

    Faint......一瞬间,这么多了呀.....
    强......
      

  5.   

    画图会画了!:)但是怎么能同时画个图又写上数字呢?
    请各位帮忙想想啊要求如下图!
    http://upload.51land.com/upload/magicist_aaaaa.jpg
      

  6.   

    错了,是这个!
    http://upload.51land.com/upload432/magicist_aaaaa.jpg