我试图在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