Я новичок в GWT и пытаюсь начать использовать события мыши.
У меня есть AbsolutePanel, которая получает события MouseDown:
public class TestPanel extends AbsolutePanel implements MouseDownHandler,
HasMouseDownHandlers {
private Button a = new Button();
private Button b = new Button();
public TestPanel() {
add(b);
add(a);
b.setStyleName("blue");
setWidgetPosition(a, 200, 00);
setWidgetPosition(b, 100, 50);
setWidth("500px");
setHeight("500px");
addMouseDownHandler(this);
}
/**
* MouseDownHandler
*/
public void onMouseDown(MouseDownEvent event) {
System.out.println(b);
System.out.println(event.getNativeEvent().getEventTarget());
System.out.println(event.getNativeEvent().getEventTarget().equals(b.getElement()));
}
/**
* HasMouseDownHandlers - Code to add handlers to the panel
*/
public HandlerRegistration addMouseDownHandler(MouseDownHandler handler) {
return addDomHandler(handler, MouseDownEvent.getType());
}
}
То, что я написал до сих пор, позволяет мне проверить, какой дочерний элемент AbsolutePanel был нажат.Я хотел бы проверить, является ли цель экземпляром определенного класса или реализует ли он определенный интерфейс.Есть какой-либо способ сделать это?Есть ли способ, альтернативный тому, что я здесь делаю, который предпочтительнее?
спасибо,
Крис