GWT onFocus事件未在文本框中触发

时间:2014-10-20 12:38:43

标签: gwt textbox onfocus

onFocus事件未在文本框中触发。我有以下代码,我正在使用GWT 2.6.0

当我在文本框上使用焦点处理程序然后它正常工作但我也有浏览器事件,我无法触发焦点事件.Below是浏览器上的代码。

@Override
    public void onBrowserEvent( Context context, Element parent, String value, NativeEvent event,
            ValueUpdater<String> valueUpdater )
    {
        String eventType = event.getType();     

      if( BrowserEvents.FOCUS.equals( eventType ) )
        {
           //Do what you want on focus
        }

1 个答案:

答案 0 :(得分:1)

您应该使用GWT提供的方法(为了您的方便):

textBox.addFocusHandler(new FocusHandler() {
    @Override
    public void onFocus(FocusEvent event) {
        //Do some operation onFocus event
    }
});

它是HasFocusHandlers的一部分,由很多GWT的小部件实现。类似的处理程序可以用于鼠标,键盘,模糊等事件。

为了完整起见:如果您需要直接在任何ONFOCUS上侦听DOM Widget事件,则需要首先使用相应的位/标志调用sinkEvents方法(或者在你的小部件中覆盖它)。您可以在Event类中找到相关的标记。