我无法设置相对于我的jtable列的选择器

时间:2015-01-21 13:48:18

标签: java swing datepicker jtable

  table_model = new DefaultTableModel(header, 3) {

         };

         table = new JTable(table_model) {
             @Override
             public boolean editCellAt(int row, int column) {

                 if (column == 3) {
                     Object value=getValueAt(row, column);
                     String date=new Date().toString();
                     if(value!=null){
                         date=value.toString();
                     }

                     dateTextField=new ObservingTextField(row,column);

                     dateTextField.setText(date);
                     DatePicker dp = new DatePicker(dateTextField, Locale.US);  

                     JPanel panel=new JPanel();

                     Date selectedDate = dp.parseDate(textField.getText());
                     dp.setSelectedDate(selectedDate);
                     dp.start(textField);
                     return false;
                 } else {
                     return true;
                 }
             }

             @Override
             public boolean isCellEditable(int row, int column) {
                 return editCellAt(row, column);
             }

         };  

我想根据我的jtable列设置我的日期选择器。这是将column3设置为生日列。如果用户点击生日列,则日历显示为dispalying。但问题是显示屏幕顶部。但我想显示适应它下面的corlesnding栏。

1 个答案:

答案 0 :(得分:1)

您可以使用JTable的方法

public Rectangle getCellRect(int row, int column, boolean includeSpacing)

获取单元格边界并设置控制坐标。