SmartGwt – Multiples llamadas al utilizar el checkbox para seleccionar todos

marzo 19, 2013

Si necesitas un control para desplegar una lista de opciones, puedes utilizar un ListGrid y activar el modo de selección con casillas (checkbox).

Debes tener en cuenta, si quieres ejecutar código cuando cambie la selección, que el evento SelectionChangedHandler se manda llamar para cada elemento seleccionado.

    ListGrid grdOpciones = new ListGrid();
    grdOpciones.setSelectionType(SelectionStyle.SIMPLE);
    grdOpciones.setSelectionAppearance(SelectionAppearance.CHECKBOX);
    grdOpciones.addSelectionChangedHandler(new SelectionChangedHandler() {
        @Override
        public void onSelectionChanged(SelectionChangedEvent event) {
            updateOpciones();
        }
    });

Esto es ineficiente cuando el usuario marca la casilla del encabezado para seleccionar todos los elementos. En este caso, convendría utilizar el evento SelectionUpdatedHandler que se dispara una sola vez.

    grdOpciones.addSelectionUpdatedHandler(new SelectionUpdatedHandler() {
        @Override
        public void onSelectionUpdated(SelectionUpdatedEvent event) {
            updateOpciones();
        }
    });

Fuentes:
http://forums.smartclient.com/showthread.php?t=15971

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: