gpt4 book ai didi

java - 在 Jtable/ResultSet 中格式化日期

转载 作者:搜寻专家 更新时间:2023-11-01 01:04:34 24 4
gpt4 key购买 nike

我无法在我的 JTable 中以我想要的格式显示 Date。我的 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();
}

println(.) 从未打印过,所以它甚至都没有打印出来。显示的格式是 Apr 10, 1992 但我想要 04/10/92

当我们讨论 JTables 中的 Date 时...我将 isCellEditable(.) 设置为 true 但我无法编辑日期单元格。你是怎么做到的?

最佳答案

不要覆盖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);

关于java - 在 Jtable/ResultSet 中格式化日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2412007/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com