0

I am using date chooser from jcalendar-1.2.2 jar. How to clear the date in date field of datechooser?

package com.multiasset.manualorderentry.gui.components;

import java.awt.FlowLayout;
import java.text.ParseException;
import java.util.Date;

import javax.swing.JLabel;
import javax.swing.JPanel;

import com.indigo.utils.Log;
import com.multiasset.manualorderentry.constants.ManualOrderConstants;
import com.toedter.calendar.JDateChooser;

@SuppressWarnings("serial")
public class FixingDatePanel extends JPanel{
  private JDateChooser fixingDateChooser;
  private JLabel fixingDateLabel;
  private String labelText;

  public FixingDatePanel(String labelText) {
   this.labelText = labelText;
   initComponents();
   layoutComponents();

  }

  private void initComponents() {
    fixingDateLabel = new JLabel(labelText);
    fixingDateLabel.setPreferredSize(ManualOrderConstants.LABEL_DIMENSION);

    fixingDateChooser = new com.toedter.calendar.JDateChooser();
    fixingDateChooser.setPreferredSize(ManualOrderConstants.EDITOR_DIMENSION);
    fixingDateChooser.setDateFormatString("yyyyMMdd");
    fixingDateChooser.setDate(new Date());
  }

  private void layoutComponents() {
  setLayout(new FlowLayout(FlowLayout.LEFT, 5, 0));
   add(fixingDateLabel);
   add(fixingDateChooser);

  }

  public void setEnabled(boolean enabled) {
    fixingDateLabel.setEnabled(enabled);
    fixingDateChooser.getSpinner().setEnabled(enabled);
  }

  public void setFixingDate(String fixingDate) {
    try {
      Date date = ManualOrderConstants.formatter.parse(fixingDate);
      fixingDateChooser.setDate(date);
    } catch (ParseException e) {
      Date date = new Date();
      fixingDateChooser.setDate(date);
      Log.error("FixingDatePanel", "setFixingDate", e);
    }
  }

  public String getFixingDate(){
    Date date = fixingDateChooser.getDate();
    String fixingDate = ManualOrderConstants.formatter.format(date);
    return fixingDate;
  }

  public Date getDate(){
    return fixingDateChooser.getDate();
  }
}

I have a JPanel with label and datechooser. based on some condition i wanted to do panel.setEnabled(false) and panel.setFixingDate(""). Something like this to clear the fields.

I can not use the how to clear JDateChooser field? because I use jcalendar-1.2.2 jar. and it doesnt have method like setCalendar.

Community
  • 1
  • 1
MRavindran
  • 447
  • 2
  • 10
  • 24

0 Answers0