如何处理GWT TextInputCell的焦点事件?

时间:2013-07-05 07:42:56

标签: java gwt

我有一个DataGrid,其中包含一个包含TextInputCell的列。当我专注于此单元格时,按钮必须变为活动状态。为了做到这一点,我必须抓住一些焦点事件。

TextInputCell API包含onBrowserEvent(Context context, Element parent, String value, NativeEvent event, ValueUpdater<String> valueUpdater)。太好了,我想能抓住任何事件,我想。但是我遇到的第一个问题是,当我松开/获得焦点时,onBrowseEvent会连续多次抛出。

似乎这个问题很典型,但我无法找到或找到任何解决方案来解决这个问题。我很感激任何帮助。

这是我要捕捉“焦点”事件的地方:

MyTextInputCell cell = new MyTextInputCell() {
    @Override
    public void onBrowserEvent(Context context, Element parent, String value, NativeEvent event, ValueUpdater<String> valueUpdater) {
        super.onBrowserEvent(context, parent, value, event, valueUpdater);
        //Event handling is expected to be here
    }
};

2 个答案:

答案 0 :(得分:1)

这样的东西?

 String eventType = event.getType();
   if ("focus".equals(eventType)) {
       // dosomething           
  }

答案 1 :(得分:0)

我建议添加一个单元格预览处理程序,然后根据BrowserEvents中定义的常量检查事件类型