如何从JMonthChooser
({1}}(toedter.com/jcalendar/)获取JCalendar
字符串中的月份名称,并将其转换为字符串" 01"," 02&# 34;," 03",...," 12"就像使用SimpleDateFormat
一样简单。
我会尝试:
String mymonth;
SimpleDateFormat sdfm = new SimpleDateFormat("MM");
JComboBox combom = (JComboBox)jMonthChooser1.getSpinner();
mymonth = sdfm.format(((JTextField)combom.getEditor()).getText());
但没有成功
答案 0 :(得分:4)
给定JMonthChooser
的实例,PropertyChangeListener
会在Integer
范围内看到类型为0 .. 11
的新值。不要试图将此强制转换为适合SimpleDateFormat
的日期,而应考虑使用合适的Formatter
。
JMonthChooser jmc = new JMonthChooser();
jmc.addPropertyChangeListener("month", new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent e) {
System.out.println(e.getPropertyName() + ": "
+ String.format("%02d", ((Integer) e.getNewValue()).intValue() + 1));
}
});
答案 1 :(得分:1)
我得到了我需要的另一种方式: 以下是代码:
JCalendar jCalendar1 = new JCalendar();
String mymonth;
SimpleDateFormat sdf1 = new SimpleDateFormat("MM");
Date date1 = jCalendar1.getDate();
mymonth = sdf1.format(date1);