Java 如何初始化没有默认日期的JCalendar
我正在使用并以以下方式初始化它:Java 如何初始化没有默认日期的JCalendar,java,swing,calendar,jcalendar,jpopup,Java,Swing,Calendar,Jcalendar,Jpopup,我正在使用并以以下方式初始化它: popup = new JPopupMenu(); calendar = new JCalendar(); popup.add(calendar); calendar.addDateListener(new DateListener() { @Override public void dateChanged(DateEvent de) { Calendar c = de.getSelectedDate(); if (c
popup = new JPopupMenu();
calendar = new JCalendar();
popup.add(calendar);
calendar.addDateListener(new DateListener() {
@Override
public void dateChanged(DateEvent de) {
Calendar c = de.getSelectedDate();
if (c != null) {
String data = c.get(Calendar.DAY_OF_MONTH) + "-" + (c.get(Calendar.MONTH) + 1) + "-" + c.get(Calendar.YEAR);
dateTextField.setText(data);
popup.setVisible(false);
}
}
});
dateTextField.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
popup.show(e.getComponent(), e.getX(), e.getY());
popup.setVisible(true);
}
});
这样,当我点击文本字段
dateTextField
时,它会显示带有JCalendar
的弹出窗口,但它会显示我今天选择的日期,如果我想在文本字段中显示该日期,我必须选择另一个日期,然后选择另一个时间今天的日期。如何删除默认的选定日期?谢谢 似乎没有一种方法可以使用JCalendar实现您想要的功能。另一种选择是在弹出窗口中添加一个“完成”按钮,该按钮将抓取当前选择的日期,设置按钮文本,并关闭弹出窗口。这对用户来说可能更直观,因为如果他们意外地点击了错误的日期,弹出窗口关闭可能会有点混乱