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栏。
答案 0 :(得分:1)
您可以使用JTable的方法
public Rectangle getCellRect(int row, int column, boolean includeSpacing)
获取单元格边界并设置控制坐标。