2011-02-09 8 views
9

Come aggiungere i gestori di clic a HorizontalPanel?Aggiungere un gestore di clic a un HorizontalPanel in GWT

Ha funzionato con l'uso di addDomHandler() nelle versioni GWT più recenti, ma ho dovuto effettuare il downgrade a GWT 2.0.4, dove questo non è supportato. Ero solito farlo in questo modo:

horizontalPanel.getWidget(1).addDomHandler(someClickHandler,ClickEvent.getType()); 
//or 
horizontalPanel.addDomHandler(someClickHandler, ClickEvent.getType()); 

risposta

31

Utilizzare FocusPanels invece di agganciare eventi nativi. Per catturare clic per tutto il pannello:

FocusPanel wrapper = new FocusPanel(); 
HorizontalPanel panel = new HorizontalPanel(); 
wrapper.add(panel); 
wrapper.addClickHandler(new ClickHandler() { 
    @Override 
    public void onClick(ClickEvent event) { 
    // Handle the click 
    } 
}); 

// Add wrapper to the parent widget that previously held panel. 

O per catturare scatti all'interno di una cella nella HorizontalPanel:

IsWidget child; // Any widget 
HorizontalPanel panel = new HorizontalPanel(); 
FocusPanel clickBox = new FocusPanel(); 

clickBox.add(child); 
panel.add(clickBox); 

clickBox.addClickHandler(...); 
+0

grazie, signore. –

Problemi correlati