Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JCalendarButton接收日期_Java_Swing - Fatal编程技术网

Java JCalendarButton接收日期

Java JCalendarButton接收日期,java,swing,Java,Swing,如何使用actionPerformed方法接收选定日期 你知道其他有用的方法吗 我找不到接收所选日期的正确方法 _jCalendarButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { Object[] tab = _jC

如何使用actionPerformed方法接收选定日期

你知道其他有用的方法吗

我找不到接收所选日期的正确方法

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

您需要使用
PropertyChangeListener
而不是
ActionListener
,并从其
PropertyChangeEvent

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

项目记录在此处:。您必须在按钮上添加PropertyChangeListener,以便在日期更改时收到通知。ActionListener仅在您按下按钮时被调用。假设项目没有发布javadoc,请查看以获取更多信息。

如果您想使用日历的GUI选择日期,可以使用JXDatePicker(SwingX的组件)。您将需要一个swingxjar文件来使用它。 使用以下代码:

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

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

Swing没有按钮。您使用的是哪种API?它的javadoc在哪里?什么类型的对象是
\ujCalendarButton
?它是jCalendarButton,我在这里找到的:哎呀,我错了,它是SwingX。对不起,上面的代码是工作代码。您只需使用按钮注册一个
PropertyChangeListener