我正在尝试将 CDateTime 作为我的 swt 表控件的单元格编辑器。当我运行一个独立的 CDateTime 示例(从这里)时,它是这样的:
CDateTime 是这样创建的:
final CDateTime cdt = new CDateTime(shell, CDT.DROP_DOWN | CDT.DATE_SHORT | CDT.COMPACT);
cdt.setSelection(new Date());
注意导致下拉的图标 - 它看起来像一个日历。您可以看到月/年,并且在标题的左下角有 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");
我究竟做错了什么?