AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / ¿Cómo proceder? / Programación
  • Presentación
  • Método 1: Utilización de la función TableSelect
  • Ejemplo
  • Método 2: Utilización de la sentencia FOR EACH
  • Ejemplo
  • Método 3: Utilizar una columna de Casilla de verificación
  • Ejemplo de código
WINDEV
WindowsLinuxJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac Catalyst
Otros
Procedimientos almacenados
Presentación
Por defecto, se puede seleccionar una sola fila en un control Tabla. No obstante, el control Tabla puede configurarse para convertirse en multiselección. En este caso, el usuario podrá seleccionar varias filas y recuperarlas mediante programación.
El modo de selección de filas "Múltiple" puede seleccionarse en la pestaña "UI" de la ventana de descripción del control.
La multiselección puede realizarse mediante las teclas estándar Shift y Ctrl, las flechas y/o el ratón.
A continuación, se pueden utilizar 3 métodos para recuperar las filas seleccionadas:
Método 1: Utilización de la función TableSelect
Este método consiste en iterar sobre las filas con TableSelect.
Una variable que representa el rango de la lista seleccionada se incrementará comenzando en 1.
  • Si TableSelect devuelve -1, significa que no hay filas seleccionadas.
  • Si TableSelect devuelve un valor superior a 0, este valor representa la posición de la fila seleccionada en el control Tabla.
Para recuperar el valor del elemento seleccionado, utilice la siguiente sintaxis:
NameTableControl.ColumnName[Subscript]
Nota: Para obtener el número de filas seleccionadas, utilice TableSelectCount. Esto le permite realizar un bucle con una sentencia FOR en lugar de una sentencia WHILE.

Ejemplo

Rank is intRowPosition is int
ColumnValue is string
 
Rank = 1
RowPosition = TableSelect(NameTableControl, Rank)
WHILE RowPosition <>-1
ElementValue = NameTableControl.ColumnName[RowPosition]
Rank++
RowPosition = TableSelect(NameTableControl, Rank)
END
Método 2: Utilización de la sentencia FOR EACH
Este método consiste en recorrer las filas seleccionadas con una sentencia FOR EACH específica.

Ejemplo

FOR EACH SELECTED ROW OF NameTableControl
// Process the selected row
END
Método 3: Utilizar una columna de Casilla de verificación
En lugar de utilizar el mecanismo de selección múltiple del control Tabla, es posible utilizar una columna Casilla de verificación para gestionar la selección. Esta columna debe estar en edición en el control Tabla.
En este caso:
  • si la casilla que se encuentra en la casilla de verificación está marcada, la fila está seleccionada.
  • si la casilla no está marcada, la fila no está seleccionada.
Todo lo que tiene que hacer es examinar todas las filas que se encuentran en el control Tabla y comprobar si la casilla está marcada en cada fila.

Ejemplo de código

Sub is int 
FOR Sub = 1 TO TableCount(NameTableControl)
IF NameTableControl.Col_CheckBox[Sub] = True THEN
// Process the selected row
END
 
END
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 19/01/2025

Señalar un error o enviar una sugerencia | Ayuda local