Привет, есть Дата в строковом формате.
datevalue= [Вт, 06 марта, 06:00:00 CET 2012].
в моем коде у меня есть textBox
, где установлено значение. когда я нажимаю на textbox
, я вижу datepicker
.
что я хочу сделать, так это то, что в datepicker
date
должно быть выделено любое значение в textbox
.
а также, когда я нажимаю datePicker
, значение в тексте должно иметь тот же формат, что и [Вт, 06 марта, 06:00:00 CET 2012].
мой код.
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;
}
отредактировано на ошибку
errorjava.lang.IllegalArgumentException: [Tue Mar 06 05:00:00 UTC 2012]
errorjava.lang.IllegalArgumentException: [Wed May 09 12:00:00 UTC+2 2012]
Первоначально текстовое поле имеет это значение [Tue Mar 06 05:00:00 UTC 2012]. но когда я нажимаю на текстовое поле, выберите дату. Средство выбора даты дает вторую дату в текстовом поле Среда, 09 мая, 12:00:00 UTC+2 2012. Первый может быть незаконным аргументом, поскольку он установлен мной. но второй устанавливается средством выбора даты.