私の目標は、キーボードの Enter キー (KEY_ENTER) を押すと、ボタンの onClick(..) メソッドをアクティブにすることです。この目的のために、次のコードを試していますが、次のような例外が発生しています。
com.google.gwt.event.shared.UmbrellaException: 例外がキャッチされました: com.google.gwt.user.client.ui.Button は com.google.gwt.event.dom.client.ClickHandler にキャストできません
コード:
returnKeyHandler = new KeyDownHandler() {
@Override
public void onKeyDown(KeyDownEvent event) {
if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) {
Window.alert("Enter key pressed!!");
((ClickHandler) button).onClick(null);
}
}
};
Button button = new Button();
button.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
Window.alert("blah blah");
//blah blah..
}
});
TextBox textBox = new TextBox();
textBox.addKeyDownHandler(returnKeyHandler);
例外は理解できますが、解決策が見つかりません。