我在我的项目中使用DateChooser。在选择其他日期之后,dateChooser保持在同一日期(当前日期)。它没有在视觉上改变。我尝试使用setData()和redraw()方法也是。它没有用。我使用的是smartgwt-1.1和gwt-1.6.4版本。我的示例代码是:
final DateChooser dateChooser = new DateChooser();
dateChooser.setWidth("180");
dateChooser.setHeight("180");
dateChooser.addDataChangedHandler(new DataChangedHandler() {
public void onDataChanged(DataChangedEvent event) {
SC.say(dateChooser.getData()+"");
dateChooser.setData(dateChooser.getData());
dateChooser.redraw();
}
});
有人可以提出建议吗?
答案 0 :(得分:1)
您不需要为DateChooser
设置任何处理程序以使该项有效。你没有DataChangedHandler
尝试吗?
在旁注中,如果希望在字段中的用户输入上触发事件,则应使用addChangedHandler
,而不是addDataChangedHandler
。绑定数据源的数据更改(从数据源获取新数据)时触发DataChangedHandler,而不是在用户更改项目值时触发。
答案 1 :(得分:0)
您在哪里更改代码的日期?我只看到dateChooser.setData(dateChooser.getData())
,显然代码永远不会改变数据。