gwt mgwt

Un evento que se realizará cuando hago clic en un Panel en GWT/MGWT



(2)

Haría un nuevo widget (que se extiende en este ejemplo un panel Absoluto) que implementa la interfaz HasClickHandlers como este

public class MyCustomPanel extends AbsolutePanel implements HasClickHandlers { public HandlerRegistration addClickHandler( ClickHandler handler) { return addDomHandler(handler, ClickEvent.getType()); } }

Y luego en mi código lo haría así

MyCustomPanel mPanel = new MyCustomPanel(); mPanel.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { // Do on click stuff here. } });

Quiero realizar un evento cuando hago clic en un panel, de la misma manera que sucede cuando el usuario hace clic en un botón.

Necesito esto para manejar eventos al hacer clic para este panel.


FocusPanel usar GWT FocusPanel que hace que sus contenidos sean enfocables, y agrega la capacidad de atrapar eventos de mouse y teclado. Así que envuelve tu panel dentro de FocusPanel .

Panel panel = new Panel(); //Your panel here(ex;hPanel,vPanel) FocusPanel focusPanel = new FocusPanel(); focusPanel.addClickListener(new ClickListener(){ public void onClick(Widget sender) { // TODO Auto-generated method stub } }); focusPanel.add(panel);

Una posibilidad más (sin FocusPanel)

HorizontalPanel hpanel = new HorizontalPanel(); hpanel.sinkEvents(Event.CLICK); hpanel.addHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { // TODO Auto-generated method stub } }, ClickEvent.getType());