我无法Date以我想要的格式显示s JTable.我JTable已使用ResultSet和列表创建.
我试过以下getValueAt(.)但没有运气:
if(value instanceof Date)
{
//System.out.println("isDate");
DateFormat formatter = DateFormat.getDateInstance();
SimpleDateFormat f = new SimpleDateFormat("MM/dd/yy");
value = f.format(value);
Date parsed = (Date) value;
try {
parsed = (Date) f.parse(value.toString());
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
value = parsed.toString();
}
Run Code Online (Sandbox Code Playgroud)
该println(.)从不打印所以它甚至不说这个.正在显示的格式是Apr 10, 1992我想要的04/10/92
虽然我们对的话题Date中JTables,我还isCellEditable(.)为真,但我不能编辑日期细胞.你怎么做到这一点?
Pet*_*ang 14
不要覆盖getValue,TableCellRenderer改为使用:
TableCellRenderer tableCellRenderer = new DefaultTableCellRenderer() {
SimpleDateFormat f = new SimpleDateFormat("MM/dd/yy");
public Component getTableCellRendererComponent(JTable table,
Object value, boolean isSelected, boolean hasFocus,
int row, int column) {
if( value instanceof Date) {
value = f.format(value);
}
return super.getTableCellRendererComponent(table, value, isSelected,
hasFocus, row, column);
}
};
table.getColumnModel().getColumn(0).setCellRenderer(tableCellRenderer);
Run Code Online (Sandbox Code Playgroud)