如题,单击jtable的一个单元格就会弹出一个日历控件可以选择日期,该如何实现?

解决方案 »

  1.   

    写个renderer
    这个例子给你参考一下
    DefaultTableCellRenderer tcr = new DefaultTableCellRenderer()
         {
           public Component getTableCellRendererComponent(JTable table,Object value,
               boolean isSelected,boolean hasFocus,int row,int column)
           {
               JTextArea textPane = new JTextArea();
               textPane.setLineWrap(true);
               textPane.setText((String)value);
               TableColumnModel columnModel = table.getColumnModel();
               textPane.setSize(columnModel.getColumn(column).getWidth(),
                                10);
               int heightWanted = (int) textPane.getPreferredSize().getHeight();
               if (heightWanted > table.getRowHeight(row))
               {
                 table.setRowHeight(row, heightWanted);
               }
               if (isSelected)
               {
                 textPane.setBackground(table.getSelectionBackground());
                 textPane.setForeground(table.getSelectionForeground());
               }
               else
               {
                 textPane.setBackground(table.getBackground());
                 textPane.setForeground(table.getForeground());
               }
               return textPane;
           }
         };
      

  2.   

    看Java tutorial中的改写table cellrenderer,就明白了,这个东西不是一下都能明白的,得自己看程序说明才行。
      

  3.   

    用不着这么麻烦的吧 加个点击事件 弹出个日历不就好了么。 干什么还改写renderer