我试图提交一个日期,以便我可以在SQL中使用它。我将jDateChooser放在屏幕上并用它来定义一个字符串。因为它从没有值(null)开始,它会抛出空指针异常。我使用compdate.setCalendar(Calendar.getInstance());
初始化JDateChooser
这会将日期设置为今天,这是我拉入字符串时返回的值。代码如下,我很乐意解决这个问题。我猜这是因为我无知何时应该更新更新...
JDateChooser compdate = new JDateChooser();
compdate.setDateFormatString("yyyy/MM/dd");
compdate.setBounds(26, 75, 144, 23);
compdate.setCalendar(Calendar.getInstance());
String jcalval = (new java.text.SimpleDateFormat("yyyy/MM/dd")).format(compdate.getDate());
panelReporting.add(compdate);
System.out.println(jcalval);
答案 0 :(得分:1)
OP报告说,他通过添加评论和相关问题中建议的听众来解决问题:
compdate.getDateEditor().addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent e) {
if ("date".equals(e.getPropertyName()))
{
System.out.println(e.getPropertyName()
+ ": " + (Date) e.getNewValue());
}
}
});
(这是在问题中发布的,它不属于它;我只是把它拿出来回答。)