Alex Rivera | Logout

Firing click event from code in gwt

Asked 2009-08-06T11:38:52.327
23

I have created a custom widget in gwt which extends the composite.I am using focus panel in that.For FocusPanel I added ClickHandler.Then I have added keyboard listner.Now on press of Enter key it should trigger click event.Can any one help me to trigger click event by using code in GWT?

focusPanel.addKeyPressHandler(new KeyPressHandler() {
            public void onKeyPress(KeyPressEvent event) {
                if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_ENTER)        {
                    // TODO call onClick() method
                }
            }
        });

Thanks

gwt
Edit
Report

2 Answers

19

I haven't done this for a click event, but I've done change events like this.

NativeEvent event = Document.get().createChangeEvent();
DomEvent.fireNativeEvent(event, this);

The [createClickEvent](http://google-web-toolkit.googlecode.com/svn/javadoc/1.6/com/google/gwt/dom/client/Document.html#createClickEvent(int,%20int,%20int,%20int,%20int,%20boolean,%20boolean,%20boolean,%20boolean)) method takes a lot more parameters though.

public final NativeEvent createClickEvent(int detail,
                                          int screenX,
                                          int screenY,
                                          int clientX,
                                          int clientY,
                                          boolean ctrlKey,
                                          boolean altKey,
                                          boolean shiftKey,
                                          boolean metaKey)
answered 2009-08-06T12:21:16.913
2

Please notice that the KeyPressHandler doesn't work in Firefox for special keys like ENTER, you would need to use the KeyUp or KeyDown

http://code.google.com/p/google-web-toolkit/issues/detail?id=5558#c6

answered 2011-01-13T16:30:34.933

Your Answer