我試圖在GWT中將畫布添加到keyboardlistener。但它不起作用。GWT - 如何將keyboardlistener添加到畫布?
我還將鼠標處理程序添加到此畫布並且它可以正常工作。
這裏是鼠標處理程序的代碼(這工作):
canvas.addMouseMoveHandler(new MouseMoveHandler() {
public void onMouseMove(MouseMoveEvent event) {
mouseX = event.getRelativeX(canvas.getElement());
mouseY = event.getRelativeY(canvas.getElement());
}
});
這裏是鍵盤處理程序的代碼(這不起作用):
canvas.addKeyDownHandler(new KeyDownHandler() {
public void onKeyDown(KeyDownEvent event) {
int key = event.getNativeKeyCode();
System.out.println("key: " + (char) key);
System.out.println("keypressed :"+ event.getNativeKeyCode());
}
});
任何想法?
編輯:GwtCanvasDemo.java: 初始化我的畫布作爲相同的方式,這個類來完成。我只是添加了addkeydownhandler,並沒有工作。我嘗試了Chrome和IE9。
你在哪裏初始化你的'canvas'?在這裏粘貼代碼。 – HashimR
你使用什麼瀏覽器? – HashimR