gpt4 book ai didi

java - GWT DateBox - 禁用特定日期

转载 作者:行者123 更新时间:2023-12-01 12:55:24 24 4
gpt4 key购买 nike

我想禁用日期框中的特定日期。我用这段代码尝试过,但指定的日期(当天)没有被禁用。

final DateBox dateBox = new DateBox();
dateBox.getDatePicker().addShowRangeHandler(new ShowRangeHandler<Date>() {

@Override
public void onShowRange(final ShowRangeEvent<Date> event) {
List<Date> disabledDates = new ArrayList<Date>();
disabledDates.add(new Date());
dateBox.getDatePicker().setTransientEnabledOnDates(false, disabledDates);
}
});

还有其他方法可以做到这一点吗?

编辑:按照 apanizo 的示例,29.5 日看起来呈灰色,但仍然可以点击。

enter image description here

最佳答案

真的很抱歉,我没有测试上一个答案的代码。

我刚刚尝试过,你的代码对我有用,我所做的唯一一件事就是通过 setTransientEnabledOnDates(false, dateToDisable); 传递我不想要的所有日期。方法。

示例:

public void onModuleLoad() {
final DateBox dateBox = new DateBox();

dateBox.getDatePicker().addShowRangeHandler(new ShowRangeHandler<Date>() {
@Override
public void onShowRange(final ShowRangeEvent<Date> dateShowRangeEvent) {
final Date today = new Date(); //30 May 3014
final Date yesterday = new Date(today.getTime()- 24*60*60*1000);

//disabling yesterday - 29 May of 2014
dateBox.getDatePicker().setTransientEnabledOnDates(false, yesterday);

}
});

RootPanel.get().add(dateBox);

}

如果您想在禁用日期禁用点击事件,这是一个已解决但未交付的错误。

参见: https://code.google.com/p/google-web-toolkit/issues/detail?id=7876

我想在GWT的2.7版本中将会发布它,同时你可以在com.google.gwt.user.datepicker.client.CellGridImpl第77行中引入它的补丁。 :

 addDomHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
if (isActive(Cell.this)) {
setSelected(Cell.this);
}
}
}, ClickEvent.getType());

detail here

关于java - GWT DateBox - 禁用特定日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23957705/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com