cha*_*ama 6 java eclipse swt nebula
我正在尝试将CDateTime作为我的swt表控件的单元格编辑器.当我运行一个独立的CDateTime示例(从这里),它是这样的:

CDateTime的创建方式如下:
final CDateTime cdt = new CDateTime(shell, CDT.DROP_DOWN | CDT.DATE_SHORT | CDT.COMPACT);
cdt.setSelection(new Date());
Run Code Online (Sandbox Code Playgroud)
注意导致下拉的图标 - 它看起来像一个日历.您可以看到月/年,标题的左下角有2个箭头按钮和"今天"按钮.选择日期时,日期也会正确写入文本框.
但是,当我尝试将其添加为单元格编辑器时,它的外观如下所示:

请注意,图标不同,标题部分不同.还要注意我是如何选择一个日期并得到这个奇怪的数字 - 一个月32! - 在文本框中.当弹出窗口消失时,日期是正确的,但这种奇怪的行为看起来很奇怪而且令人担忧.
我像这样创建了CDateTime:
final int style = getStyle() | CDT.DATE_SHORT | CDT.DROP_DOWN | CDT.COMPACT ;
this.dateTime = new CDateTime(parent, style);
this.dateTime.setPattern("mm/dd/yyyy");
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
小智 1
我知道这是一个老问题,但答案是:您设置的模式是错误的,“mm”代表分钟。相反,您可以使用“MM”来获取月份:
dateTime.setPattern("MM/dd/yyyy");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
298 次 |
| 最近记录: |