GWT中的日期选择器

GWT中的日期选择器,gwt,datepicker,gwt2,uibinder,Gwt,Datepicker,Gwt2,Uibinder,Hi具有字符串格式的日期。 datevalue=[2012年3月6日星期二06:00:00 CET] 在我的代码中,我有文本框,其中设置了值。 当我点击textbox时,我看到一个datepicker 我想做的是,在日期选择器中,无论文本框中的值是什么,都应该突出显示日期 此外,当我单击日期选择器时,文本中的值应采用与相同的格式 [欧洲中部时间2012年3月6日星期二06:00:00]。 我的密码是 private TextBox getTimeLable(String datevalue) {

Hi具有字符串格式的日期。

datevalue=[2012年3月6日星期二06:00:00 CET]

在我的代码中,我有
文本框
,其中设置了值。 当我点击
textbox
时,我看到一个
datepicker

我想做的是,在
日期选择器中,无论
文本框中的值是什么,都应该突出显示
日期

此外,当我单击日期选择器时,文本中的值应采用与相同的格式 [欧洲中部时间2012年3月6日星期二06:00:00]。

我的密码是

private TextBox getTimeLable(String datevalue) {
        // TODO Auto-generated method stub
        System.out.println("date" + datevalue);
        final TextBox   timebx =new TextBox();
        timebx.setReadOnly(true);
        timebx.setText(datevalue);
        final PopupPanel popupPanel=new PopupPanel(true);
        DatePicker datePicker=new DatePicker();
        datePicker.addValueChangeHandler(new ValueChangeHandler<Date>() {

            public void onValueChange(ValueChangeEvent<Date> event) {
                // TODO Auto-generated method stub

                Date date=event.getValue();
                timebx.setText(DateTimeFormat.getFormat("yyyy-MM-dd").format(date));
                popupPanel.hide();
            }
        });
        popupPanel.setWidget(datePicker);
        timebx.addClickHandler(new ClickHandler() {

            public void onClick(ClickEvent event) {
                // TODO Auto-generated method stub
                int x=timebx.getAbsoluteLeft();
                int y=timebx.getAbsoluteTop();
                popupPanel.setPopupPosition(x, y+20);
                popupPanel.show();
            }
        });

        return timebx;
    }
最初,文本框带有此值[Tue Mar 06 05:00:00 UTC 2012]。 但当我点击文本框n时,选择日期。日期选择器在文本框Wed May 09 12:00:00 UTC+2 2012中给出第二个日期。第一个可能是非法的争论,因为它是由我设定的。但是第二个是由日期选择器设置的。

这应该可以

import com.google.gwt.i18n.client.DateTimeFormat; 

DatePicker datePicker=new DatePicker();  // Have to make final to use in inner method


timebx.addClickHandler(new ClickHandler() {

        public void onClick(ClickEvent event) {
            // TODO Auto-generated method stub
            String strDate = timebx.getText();
            DateTimeFormat format = DateTimeFormat.getFormat("yyyy-MM-dd");
            try {  
              Date selDate = (Date)format.parse(strDate); 
              datePicker.setValue(selDate, true);
            } catch(Exception pe){
             // setting current date
             datePicker.setValue(new Date(), true);
            }

            int x=timebx.getAbsoluteLeft();
            int y=timebx.getAbsoluteTop();
            popupPanel.setPopupPosition(x, y+20);
            popupPanel.show();
        }
    });
这应该行得通

import com.google.gwt.i18n.client.DateTimeFormat; 

DatePicker datePicker=new DatePicker();  // Have to make final to use in inner method


timebx.addClickHandler(new ClickHandler() {

        public void onClick(ClickEvent event) {
            // TODO Auto-generated method stub
            String strDate = timebx.getText();
            DateTimeFormat format = DateTimeFormat.getFormat("yyyy-MM-dd");
            try {  
              Date selDate = (Date)format.parse(strDate); 
              datePicker.setValue(selDate, true);
            } catch(Exception pe){
             // setting current date
             datePicker.setValue(new Date(), true);
            }

            int x=timebx.getAbsoluteLeft();
            int y=timebx.getAbsoluteTop();
            popupPanel.setPopupPosition(x, y+20);
            popupPanel.show();
        }
    });

我是否使用了正确的导入
import java.text.DateFormat;导入java.text.ParseException;导入java.text.simpleDataFormat因为我必须继承这个`[ERROR][myProject]-652行:没有可用于java.text.simpleDataFormat类型的源代码;是否忘记继承所需的模块?`DateTimeFormat=new DateTimeFormat(“yyyy-MM-dd”);`构造函数DateTimeFormat(字符串)不可见,它应该是'DateTimeFormat format=DateTimeFormat.getFormat(“yyy-MM-dd”);':你的代码和我的代码做的完全一样。我需要的不是这个东西。我有这个格式的date datevalue=[Tue Mar 06 06:00:00 CET 2012]。datevalue来自服务器,在文本框中。当我单击文本框时,文本框中的日期应该在日期选择器中。当我单击日期选择器时,文本框中的日期也应采用相同的格式。EEE MMM dd HH:mm:ss vv yyyy格式我可以解决我的问题。谢谢,我使用了正确的导入
导入java.text.DateFormat;导入java.text.ParseException;导入java.text.simpleDataFormat因为我必须继承这个`[ERROR][myProject]-652行:没有可用于java.text.simpleDataFormat类型的源代码;是否忘记继承所需的模块?`DateTimeFormat=new DateTimeFormat(“yyyy-MM-dd”);`构造函数DateTimeFormat(字符串)不可见,它应该是'DateTimeFormat format=DateTimeFormat.getFormat(“yyy-MM-dd”);':你的代码和我的代码做的完全一样。我需要的不是这个东西。我有这个格式的date datevalue=[Tue Mar 06 06:00:00 CET 2012]。datevalue来自服务器,在文本框中。当我单击文本框时,文本框中的日期应该在日期选择器中。当我点击日期选择器时,文本框中的日期也应该采用相同的格式。EEE MMM dd HH:mm:ss vv yyyy格式我可以解决我的问题。非常感谢