[英]Unwanted data using JDateChooser in JCalendar
我在使用JDateChooser JCalendar
(与Swing)。 我正在尝试获得“yyyy-MM-dd”的格式,但由于某种原因我也得到时间而且它总是相同的(00:00:00 MDT)。 任何人都知道如何摆脱时间? 提前致谢。
try {
calendarDate = new JDateChooser();
} catch (Exception e) {
e.printStackTrace();
}
calendarDate.setDateFormatString("yyyy-MM-dd");
dateLabel = new JLabel("Date");
parent.frame2.getContentPane().add(dateLabel);//1
parent.frame2.getContentPane().add(calendarDate);
要使JDateChooser
显示特定的日期格式,您需要使用其setDateFormatString
API设置该特定格式
示例:
JDateChooser myDateChooser = new JDateChooser();
myDateChooser.setDateFormatString("yyyy-MM-dd");
你在做gthis吗? 然后,您必须从组件中发布您获得价值的地方。
在处理JDateChooser属性更改的位置,您可以执行以下操作以获取相同格式的日期:
示例:(假设String dateString是您想要日期字符串的位置)
myDateChooser.addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
if (evt.getPropertyName().equals("date")) {
dateString = new SimpleDateFormat("yyyy-MM-dd").format(myDateChooser.getDate());
}
}
});
我使用的是代码源,而不是* .jar中的编译文件
calNewDate.setDateFormat(new SimpleDateFormat("dd.MM.yyyy"));
calNewDate.setSpiningCalendarField(Calendar.DAY_OF_MONTH);
calNewDate.setFont(new Font("SansSerif", Font.BOLD, 12));
calNewDate.setBackground(someColor);
calNewDate.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
//some stuff
}
});
calNewDate.setToolTipText("Whatever");
请注意格式化JDateChososer textField中日期的标记。 你可以做的一个常见的词汇错误是以下我认为JDateChooser后面的addPropertyChangeListener
来捕获输入中的日期用户集:
dateInserted.getDateEditor().addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
// TODO Auto-generated method stub
if ("date".equals(evt.getPropertyName())) {
Date date = dateInserted.getDateEditor().getDate();
ordine.setOrderDate(date);
dateInserted.setDateFormatString("dd/MM/YYYY");
dateInserted.setDate(date);
System.out.println(date.toString());
dateInserted.setBorder(BorderFactory.createLineBorder(Color.GREEN));
if (canIenableCalcolaEAggiungi(2) == true)
calculatingAndAdding.setEnabled(true);
else {
calculatingAndAdding.setEnabled(false);
}
}
}
});
在脚本中它写错了:
dateInserted.setDateFormatString("dd/MM/YYYY");
当您选择年份的格式模式“YYYY”(而不是“yyyy”或“yy”cfr API)时,它无法识别并生成失败,如下所示:当您尝试编辑JDateChooser的文本字段并使鼠标停止时,日期自动随机变化。 它不能再改变了。 这也可能产生不需要的日期。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.