2013-08-17 23 views
0

如何使用方法actionPerformed接收選定的日期?JCalendarButton接收日期

你知道其他有用的方法嗎?

我找不到合適的方法來接收選定的日期。

_jCalendarButton.addActionListener(new ActionListener() 
    {     
     @Override 
     public void actionPerformed(ActionEvent e) 
     { 
      Object[] tab = _jCalendarButton.getSelectedObjects();         
     } 
    }); 
+0

Swing不是一個JCalendarButton。你在使用哪種API?它的javadoc在哪裏? –

+0

_jCalendarButton是什麼類型的對象? – Howard

+0

這是JCalendarButton,我在這裏找到它:http://sourceforge.net/projects/jcalendarbutton/ – szefu

回答

0

您將需要使用PropertyChangeListener而不是ActionListener並從其PropertyChangeEvent

jCalendarButton.addPropertyChangeListener(new PropertyChangeListener() { 
    public void propertyChange(PropertyChangeEvent evt) { 
     if (evt.getNewValue() instanceof Date) { 
     System.out.println(evt.getNewValue()); 
     } 
    } 
}); 
+0

這種方法不起作用 – szefu

+0

你能告訴我你所有的工作代碼嗎? – szefu

+0

上面的代碼是工作代碼。所有你需要做的就是註冊一個'PropertyChangeListener'你的按鈕 – Reimeus

0

如果你想選擇日曆的GUI日期,你可以使用JXDatePicker(SwingX的組件)。你將需要一個SwingX jar文件來使用它。 使用下面的代碼:

JXDatePicker datePicker = new JXDatePicker(System.currentTimeMillis()); 

datePicker.addActionListener(new ActionListener(){ 
    label.setText(datePicker.getDate().toString()); 
}); 
+0

哎呀我的錯誤它的SwingX。抱歉。 –