如题。非常感谢!请注意不是JTable的内容Collumn,而是标题,呵呵!
我试图用如下的代码,但不管用(能看见,不能点击):
                final JCheckBox ch = new JCheckBox();
                varTable.getColumnModel().getColumn(0).setHeaderRenderer(new DefaultTableCellHeaderRenderer(){
                   private static final long serialVersionUID = -1815949807624252281L;
        
                    @Override
                    public java.awt.Component getTableCellRendererComponent(JTable arg0, Object arg1, boolean arg2,
                            boolean arg3, int arg4, int arg5) {
                        javax.swing.JComponent c = (JComponent) super.getTableCellRendererComponent(arg0, arg1, arg2, arg3,
                                arg4, arg5);
                       c.add(ch);
                        return ch;
                    }
                });

解决方案 »

  1.   

    不要header了
    直接把第一行固定下来,然后在第一行里添加
      

  2.   

    想法不错!哈哈!不过在Header里面不能处理么?
      

  3.   

    不要header了 
    直接把第一行固定下来,然后在第一行里添加
    ==================
    怎么固定第一行?我还真不知道。表头添加JCheckBox实现方式有两种:
    1、重写表头UI,将每个单元组件设置成JCheckBox,这个不是很难。
    2、在单元格中添加图片,并书写事件,达到JCheckBox的效果。祝你好运。
      

  4.   

    shengli_liao:谢谢,我试试看!
      

  5.   

    CellRenderer是用来画cell的细节,图案,背景,前景,字体等等
    CellEditor是用来控制cell的editor
      

  6.   

    应该是shengli_liao说的:
    表头添加JCheckBox实现方式有两种: 
    1、重写表头UI,将每个单元组件设置成JCheckBox,这个不是很难。 
    2、在单元格中添加图片,并书写事件,达到JCheckBox的效果。这个实现起来挺麻烦的,我也没写过。不过我这有实现了Table Header是JTextField的代码,对楼主应该有帮助,我的email: weishubin84#gmail.com