我正在实例化SWT DateTime日历。实例化后,我将setDate()设置为所需的日期。尽管已设置日期,但所选日期的突出显示为灰色,而不是预期的蓝色。但是,如果我将setDate()作为自定义侦听器的一部分调用,则可以看到它被选中为蓝色。知道为什么吗?
我尝试过forceFocus(),setFocus(),setVisible(),redraw()和update()。他们似乎都没有聚集焦点。
dateTimeCalendar = new DateTime(dateTimeGroup, SWT.CALENDAR | SWT.SHORT);
dateTimeCalendar.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
calendarTabItem.setControl(dateTimeGroup);
addListener(null, dateTimeCalendar);
dateTimeCalendar.setEnabled(true);
dateTimeCalendar.addListener(SWT.MenuDetect, new CustomMenuDetectListener());
dateTimeCalendar.setDate(dateToBeSet.getYear(), dateToBeSet.getMonthOfYear(), dateToBeSet.getDayOfMonth());