String date =rs.getString(10);
((JTextField)fieldClose.getDateEditor().getUiComponent()).setText(date);
以上用于从数据库中提取DATE值以将其设置为textfield。最初插入日期时,它是com.toedter.calendar.JDateChooser();类型。但是在找回它之后,我无法在场上正确设置它。我将通过以下图片支持您的理解:
它有红色:
但理想情况下应该识别并且日期颜色应该是黑色,如下所示,但这必须手动完成...我如何解决这个问题,因此它会自动变黑。
答案 0 :(得分:1)
再次JCalendar - setting date correctly in Java using correct format,请注意我从未在jar文件中使用打包JCalendar
,始终是代码源
为具体实例设置setDateFormat
a)cal.setDateFormat(new SimpleDateFormat("dd.MM.yyyy"));
b)cal.setLocale(Locale.FRANCE);
//例如
从JDBC Statement
返回getDate(10)
(rs.getString(10);
的实例),这是java.util.Date
中方法setDate()
的有效JCalendar
实例}
Editor
派生JSpinner
,您可以使用并设置editor.getTextField().setXxx
答案 1 :(得分:1)
最简单的方法是使用SimpleDateFormat类:
String dateString = rs.getString(10);
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date = inputFormat.parse(dateString);
SimpleDateFormat outputFormat = new SimpleDateFormat("dd-MMM-yyyy", Locale.ENGLISH);
((JTextField)fieldClose.getDateEditor().getUiComponent()).setText(outputFormat.format(date));
只需更改Locale值,即可更改用于表示月份的三个字母缩写的语言。
SimpleDateFormat方法的参考: