我想禁用Vaadin日历中的移动事件
创建新日历时会自动设置所有这些处理程序。如果要禁用某些默认功能,可以将相应的处理程序设置为null。这将阻止功能出现在用户界面上。例如,如果将EventMoveHandler设置为null,则用户将无法在浏览器中移动事件。 - > Book of Vaadin
我试过了:
calendar.setHandler(null);
calendar.setHandler((EventMoveHandler) null);
calendar.setHandler((BaseEventMoveHandler) null);
EventMoveHandler handler = null;
calendar.setHandler(handler);
BaseEventMoveHandler baseHandler = null;
calendar.setHandler(baseHandler );
但没有任何效果。有什么建议....?
答案 0 :(得分:7)
使用Vaadin 7.4.5确实对我有用:
calendar.setHandler((EventMoveHandler)null);
calendar.setHandler((EventResizeHandler)null);
答案 1 :(得分:0)
如果你想禁用所有处理程序并使日历完全只读,这对我有用。
calendar.setReadOnly(true);
EDIT1: 但是,此方法不会禁用事件的调整大小指针。因此,我看到的最佳解决方案是将其与asmellado的答案一起使用:
calendar.setReadOnly(true);
calendar.setHandler((EventMoveHandler)null);
calendar.setHandler((EventResizeHandler)null);
另外,如果我没有使用setReadOnly方法,当我尝试移动事件时,我在一些strage客户端异常中运行。