SET FORM SIZE

4D - Documentation   Français   English   German   Español   4D v11 SQL, Comandos por temas   4D v11 SQL, Lista alfabética de comandos   4D v11 SQL, Constantes por temas   Regresar   Anterior   Siguiente

versión 2004


SET FORM SIZE ({objeto; }horizontal; vertical{; *})

ParámetroTipoDescripción
objetoCadenaNombre del objeto que indica los límites del formulario
horizontalEntero largoSi se pasa *: margen horizontal (píxeles)
Si se omite *: ancho (píxeles)
verticalEntero largoSi se pasa *: margen vertical (píxeles)
Si se omite *: altura (píxeles)
** Si se pasa: añadir las márgenes definidas por los
parámetros horizontal y vertical (tamaño automático o
basado en un objeto, si se pasa un objeto)
Si se omite: utilizar horizontal y vertical como ancho y
altura del formulario

Descripción

El comando SET FORM SIZE le permite cambiar el tamaño del formulario actual por programación. El nuevo tamaño es definido por el proceso actual; no está almacenado con el formulario.

Como en el entorno Diseño, puede utilizar este comando para definir el tamaño del formulario de tres maneras:

Automáticamente — 4D determina el tamaño del formulario basado en la noción de que todos los objetos deben ser visibles — y eventualmente añadiendo una margen horizontal y vertical,

Basado en la ubicación de un objeto del formulario, al cual se añaden eventualmente una margen horizontal y una margen vertical,

Introduciendo tamaños "fijos" (ancho y altura).

Para mayor información sobre los posibles redimensionamientos de los formularios, consulte el Manual de Diseño.

Tamaño automático

Si quiere que el tamaño del formulario se defina de manera automática, debe utilizar la siguiente sintaxis:

   SET FORM SIZE(horizontal; vertical;*)

En este caso, debe pasar las márgenes (en píxeles) que quiere añadir a la derecha y en la parte inferior del formulario en horizontal and vertical.

Tamaño basado en un objeto

Si quiere que el tamaño del formulario esté basado en un objeto, debe utilizar la siguiente sintaxis:

   SET FORM SIZE(objeto; horizontal; vertical;*)

En este caso, debe pasar las márgenes (en píxeles) que quiere añadir a la derecha y en la parte inferior del objeto en horizontal y vertical.

Tamaño fijo

Si quiere tener un tamaño de formulario fijo, debe utilizar la siguiente sintaxis:

   SET FORM SIZE(horizontal; vertical)

En este caso, debe pasar el ancho y la altura (en píxeles) del formulario en horizontal y vertical.

El comando SET FORM SIZE cambia el tamaño del formulario, pero también tiene en cuenta las propiedades de redimensionamiento. Por ejemplo, si el ancho mínimo de un formulario es 500 píxeles y si el comando define un ancho de 400 píxeles, el nuevo ancho del formulario será de 500 píxeles.

Igualmente note que este comando no cambia el tamaño de la ventana del formulario (puede redimensionar un formulario sin cambiar el tamaño de la ventana y viceversa). Para cambiar el tamaño de la ventana del formulario, consulte el comando RESIZE FORM WINDOW.

Ejemplo

El siguiente ejemplo muestra cómo colocar una ventana de tipo Explorador. El siguiente formulario se crea en el entorno Diseño:

El tamaño del formulario es "automático".

La ventana se visualiza utilizando el siguiente código:

   $ref:=Open form window([Tabla 1];"Form1";Standard form window; Horizontally centered; Vertically centered;*)
   DIALOG([Tabla 1];"Form1")
   CLOSE WINDOW

La parte de la derecha de la ventana puede mostrarse u ocultarse haciendo clic en la opción agrandar/reducir:

El método de objeto asociado con este botón es el siguiente:

   Case of 
   : (Form event=On load)
      C_BOOLEAN(b1;<>contraido)
      C_LONGINT(margen)
      margen:=15
      b1:=<>contraido
      If (<>contraido)
         SET FORM HORIZONTAL RESIZING(False)
         SET FORM SIZE("b1";margen;margen)
      Else 
         SET FORM HORIZONTAL RESIZING(True)
         SET FORM SIZE("tab";margen;margen)
      End if 

   : (Form event=On clicked)
      <>contraido:=b1
      If (b1)
            `contraido
         GET OBJECT RECT(*;"b1";$l;$t;$r;$b)
         GET WINDOW RECT($lf;$tf;$rf;$bf;Current form window)
         SET WINDOW RECT($lf;$tf;$lf+$r+margen;$tf+$b+margen;Current form window)
         SET FORM HORIZONTAL RESIZING(False)
         SET FORM SIZE("b1";margen;margen)

      Else 
            `expandido
         GET OBJECT RECT(*;"tab";$l;$t;$r;$b)
         GET WINDOW RECT($lf;$tf;$rf;$bf;Current form window)
         SET WINDOW RECT($lf;$tf;$lf+$r+margen;$tf+$b+margen;Current form window)
         SET FORM HORIZONTAL RESIZING(True)
         SET FORM SIZE("tab";margen;margen)
      End if

   End case

Ver también

SET FORM HORIZONTAL RESIZING, SET FORM VERTICAL RESIZING.


4D - Documentation   Français   English   German   Español   4D v11 SQL, Comandos por temas   4D v11 SQL, Lista alfabética de comandos   4D v11 SQL, Constantes por temas   Regresar   Anterior   Siguiente