Java com.google.gwt.user.client.ui.DeckPanel可以触发哪些事件?
也许这是个蹩脚的问题,但奇怪的是,在谷歌搜索了30分钟后,我找不到答案 com.google.gwt.user.client.ui.DeckPanel可以触发哪些事件?它实现了HashHandler,但声明为Java com.google.gwt.user.client.ui.DeckPanel可以触发哪些事件?,java,events,gwt,handler,Java,Events,Gwt,Handler,也许这是个蹩脚的问题,但奇怪的是,在谷歌搜索了30分钟后,我找不到答案 com.google.gwt.user.client.ui.DeckPanel可以触发哪些事件?它实现了HashHandler,但声明为void fireEvent(GwtEvent事件) 我如何知道它需要什么类型,以便通过DeckPanel.addHandler(H handler,GwtEvent.Type)订阅事件来捕获事件 具体来说,我希望在调用DeckPanel.showWidget()时捕获事件 谢谢大家! De
void fireEvent(GwtEvent事件)
我如何知道它需要什么类型,以便通过DeckPanel.addHandler(H handler,GwtEvent.Type)
订阅事件来捕获事件
具体来说,我希望在调用DeckPanel.showWidget()时捕获事件
谢谢大家!
DeckPanel
扩展了ComplexPanel
,因此它只实现了HasAttachHandlers
。因此,默认情况下,您将只接收AttachEvent
,因为它不接收其他事件。但与任何HTML元素一样,您可以通过使用addDomHandler
和addBitlessDomHandler
DeckPanel
本身不触发任何事件,使其接收任何本机事件。Widget
类型实现了addHandler
,主要用于通用DOM事件支持-调用DeckPanel\showWidget()
时不会触发内置事件。但您可以实现自己的功能:
public class MyDeckPanel extends DeckPanel {
public HandlerRegistration addShowWidgetHandler(
ShowWidgetEventHandler handler) {
return addHandler(handler, ShowWidgetEvent.getType());
}
@Override
public void showWidget(int index) {
super.showWidget(index);
fireEvent(new ShowWidgetEvent(index));
}
}