I have an idea that in the form you press a button (Select Date) and like a small window opens with that JCalendar and when the date is selected it is displayed in the form as a TextField.
您可能想尝试图书馆中的JDateChooser
课程JCalendar
,它允许选择日期或手动输入。关于第二部分,您需要为日期选择器提供一个PropertyChangeListener以侦听“日期”属性更改并相应地更新文本字段的文本。例如这样的:
final JTextField textField = new JTextField(15);
JDateChooser chooser = new JDateChooser();
chooser.setLocale(Locale.US);
chooser.addPropertyChangeListener("date", new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
JDateChooser chooser = (JDateChooser)evt.getSource();
SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
textField.setText(formatter.format(chooser.getDate()));
}
});
JPanel content = new JPanel();
content.add(chooser);
content.add(textField);
JDialog dialog = new JDialog ();
dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
dialog.getContentPane().add(content);
dialog.pack();
dialog.setLocationRelativeTo(null);
dialog.setVisible(true);