0
我構建了一個具有selectBox和table的UIBinder。該表充滿了來自數據庫的數據。 當我改變選擇框的選擇,我應該去運行一個查詢來獲取新的數據。 我在屏幕視圖中使用Widget,並在演示者處啓動它。 在UIBinder我觸發事件時,我的選擇框被更改,但我無法抓住主持人。 我怎麼能成功地做到這一點。 我的事件在小部件:GWT處理UIBinder事件
@Override
public void onChange(ChangeEvent event)
{
KPIOptionChangedEvent e = new KPIOptionChangedEvent();
fireEvent(e);
}
追趕在主持人的事件:
eventBus.addHandler(KPIEvents.KPIOptionChangedEvent.TYPE,
new KPIHandlers.KPIOptionChangedHandler()
{
@Override
public void execute(KPIOptionChangedEvent event)
{
Window.alert(event.getKPI().getName());
}
});
感謝
什麼我現在做的,它不工作: KPIOptionChangedEvent E =新KPIOptionChangedEvent(); \t \t \t \t \t \t HandlerManager eventBus = new HandlerManager(this); \t \t \t eventBus.fireEvent(e); \t \t \t \t \t \t} – Rami
您應該創建每個應用程序只有一個EventBus - 沒有必要創建多個EventBuses,因爲它們彼此之間沒有和交流,它只是造成混亂。 在其中一個主要類中使用靜態字段。 –
我明白,但我的對象不應該連接到主或其他邏輯類的東西。它應該採取相應的行動。 – Rami