在vaadin 7中的每个请求上调用一个函数

时间:2013-10-21 11:24:01

标签: java vaadin

我正在使用vaadin 7开发一个应用程序,我想在几乎所有时间都专注于文本字段。 我现在看到两种可能性。

  1. 查找所有可能的操作(按钮单击,表格选择......)并在处理此操作时调用焦点功能。
  2. 找到一种方法为每个服务器往返调用一个方法,只检查是否是一个罕见的情况,该字段不应该被聚焦(主要是因为子窗口被打开)
  3. 我更喜欢选项2,但是没有找到我必须添加一些Listener / Handler的地方,或者我必须覆盖哪些函数来一直调用焦点函数。

    选项2可能吗?如果是的话,怎么样?

    提前谢谢

1 个答案:

答案 0 :(得分:2)

您也可以尝试使用BlurListener。

    final TextField tf = new TextField();
    layout.addComponent(tf);
    tf.focus();
    tf.addBlurListener(new FieldEvents.BlurListener() {
        @Override
        public void blur(FieldEvents.BlurEvent event) {
            if (fieldShouldBeFocused)
                tf.focus();
        }
    });