繁体   English   中英

Toedter从JDateChooser获取日期

[英]Toedter Get Date From JDateChooser

我正在使用Toedter JDateChooser,并且在检索从中选取的日期时遇到问题。

jDateChooser2.setDateFormatString("dd-MMMM-yy");
jDateChooser2.addMouseListener(new java.awt.event.MouseAdapter() {
    public void mouseClicked(java.awt.event.MouseEvent evt) {
        jDateChooser2MouseClicked(evt);
    }
});

private void jDateChooser2MouseClicked(java.awt.event.MouseEvent evt) {                                           
    Date dateFromDateChooser = jDateChooser2.getDate();
    System.out.println(dateFromDateChooser);
}    

如何获取日期? 有更好的方法吗? 我认为听众没有被解雇或触发。 我尝试用以下方式替换监听器:

    System.out.println("triggered");

仍然没有输出。

基本上,您不想监听MouseEvent ,因为它们可能通过多种方式改变组件的状态,而您大多数都不希望知道。

您应该监视date属性更改事件,例如...

JDateChooser dateChooser = new JDateChooser();
dateChooser.addPropertyChangeListener("date", new PropertyChangeListener() {
    @Override
    public void propertyChange(PropertyChangeEvent evt) {
        Date date = (Date)evt.getNewValue();
        System.out.println("Date changed " + date);
    }
});

请注意,这可能是响应调用setDate或由用户从选择器中选择一个日期而触发的,通常,您将无法分辨

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM