如果我按键盘上的 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);
我可以理解异常但无法找到解决方案。