4D v13.4

OBJECT SET SCROLL POSITION

Inicio

 
4D v13.4
OBJECT SET SCROLL POSITION

OBJECT SET SCROLL POSITION  


 

OBJECT SET SCROLL POSITION ( {* ;} objeto {; posicionL {; posicionH}}{; *} ) 
Parámetro Tipo   Descripción
Operador in Si se especifica, objeto es un nombre de objeto (cadena) Si se omite, objeto es una tabla o una variable
objeto  Objeto de formulario in Nombre del objeto (si se especifica *) o Tabla o variable (si se omite *)
posicionL  Entero largo in Número de línea a mostrar
posicionH  Entero largo in Número de columna a mostrar (list box) o Desplazamiento horizontal en píxeles (imágenes)
Operador in Mostrar la línea en primera posición después del desplazamiento

El comando OBJECT SET SCROLL POSITION permite desplazar el contenido de varios tipos de objetos: líneas de un subformulario, de un formulario listado mostrado utilizando los comandos MODIFY SELECTION, DISPLAY SELECTION o de una lista jerárquica, líneas y columnas de un list box o incluso los píxeles de una imagen.

Nota: el desplazamiento por programación de un objeto continúa siendo posible incluso si las barras de desplazamiento están ocultas en el formulario.

Si pasa el primer parámetro opcional *, indica que el parámetro objeto es el nombre de un objeto de un subformulario, una lista jerárquica, un list box o campo/variable imagen (en este caso, pase una cadena en objeto). Si no pasa nada en este parámetro, indica que el parámetro objeto es una tabla (tabla de formulario listado o de subformulario) o una variable (ListRef de lista jerárquica, list box o imagen) o un campo.

El parámetro posicion permite indicar el número de la línea a mostrar o en el caso de una imagen, el desplazamiento vertical a aplicar.
Si no pasa el parámetro posicion, el comando provoca el desplazamiento vertical de las líneas de la lista de manera que la primera línea seleccionada en la lista sea visible. Si ninguna línea está seleccionada o si al menos una seleccionada ya es visible, el comando no hace nada.

Si pasa este parámetro, el comando provoca el desplazamiento vertical de las líneas de la lista de manera que la línea seleccionada sea visible (seleccionada o no). Si la línea ya es visible, el comando no hace nada, excepto si se pasa el segundo parámetro * (ver a continuación).

  • Para los formularios listados y los subformularios, este número corresponde al número de un registro en la selección actual, es decir su posición.
  • En el caso de listas jerárquicas, el comando tiene en cuenta el estado expandido/contraído de los elementos.
  • Para los list box, este número corresponde al número de la línea entre todas las líneas del objeto (incluyendo las líneas ocultas). Si el número pasado en posicion corresponde a una línea oculta en el listbox, el comando muestra la primera línea visible siguiente.
    Nota: recuerde que este comando se basa siempre en la representación estándar (no jerárquica) de un listbox, incluso si se muestra en modo jerárquico. Por lo tanto, el resultado puede variar dependiendo de si el listbox se muestra en modo estándar o jerárquico (ver ejemplo).
  • Para imágenes mostradas en el formulario, posicionLinea indica el desplazamiento vertical a aplicar a la imagen. Pase 0 en posicionLinea para no desplazar la imagen en la dimensión vertical. El valor debe expresarse en píxeles relativos al origen de la imagen en su contexto local (excepto cuando pasa el segundo parámetro * ver más adelante). La imagen debe mostrarse en el formato "Imagen truncada (no centrada)".
El parámetro posicionH puede utilizarse en el contexto de un list box o una imagen.
  • Para los list boxes, puede pasar un número de columna en posicionH. La ejecución del comando provocará el desplazamiento horizontal del list box de manera que esta columna sea visible. Si la columna ya es visible, el comando no hace nada. Como para el desplazamiento vertical, si pasa el segundo parámetro opcional *, la columna se vuelve visible para el comando (si el list box se desplaza) se ubicará en la primera posición (ver a continuación). 
  • Para una imagen mostrada en un formulario, posicionH indica el desplazamiento horizontal a aplicar a la imagen. El valor debe expresarse en píxeles en relación al origen de la imagen en su contexto local (excepto cuando pasa el segundo parámetro * ver más adelante).

Si pasa el segundo parámetro opcional *:

  • La línea se vuelve visible por el comando (si la lista se desplazó) se ubicará en la primera posición de la lista. Si la línea se ubica al final de la lista, esta opción no tiene efecto.
  • En el contexto de una imagen, desplaza la imagen en relación a su posición actual y no con respecto a su origen.

Nota: el comando HIGHLIGHT RECORDS tiene un parámetro opcional * que permite delegar la gestión de desplazamiento en los formularios al comando OBJECT SET SCROLL POSITION .

Ejemplo  

Este ejemplo ilustra la diferencia de funcionamiento del comando con un list box mostrado en modo estándar y jerárquico:

 OBJECT SET SCROLL POSITION(*;"mylistbox";4;2;*) // mostrar en la primera posición la cuarta línea y la cuarta línea y la segunda columna

Si esta instrucción se aplica a un list box mostrado en modo estándar:

... las líneas y las columnas del list box se desplazan:

Por otra parte, si la misma instrucción se aplica al list box mostrado en modo jerárquico, las líneas se desplazn pero no las columnas porque la segunda columna hacer pate de la jerarquía:

 
PROPIEDADES 

Producto: 4D
Tema: Propiedades de los objetos
Número 906

 
INDEX

Lista alfabética de los comandos

 
HISTORIA 

Modificado: 4D v11 SQL
Modificado: 4D v12
Renombrar: 4D v12

 
VER TAMBIÉN 

HIGHLIGHT RECORDS
LISTBOX SELECT ROW
OBJECT GET SCROLL POSITION