Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19
VP Run offscreen area
|
VP Run offscreen area ( parametros ) -> Resultado | ||||||||
Parámetro | Tipo | Descripción | ||||||
parametros | Objeto |
![]() |
Objeto que contiene los atributos del área fuera de pantalla | |||||
Resultado | Mixed |
![]() |
Propiedad .result del objeto onEvent, o Null si no devuelve un valor | |||||
El comando VP Run offscreen area crea un área fuera de pantalla en la memoria que puede utilizarse para procesar los comandos y funciones del área 4D View Pro.
En el objeto parametros, pase una de las siguientes propiedades opcionales. Estas propiedades estarán disponibles a través del comando This en el método onEvent y hacen referencia a la instancia:
Propiedad | Tipo | Descripción |
area | texto | El nombre del área fuera de pantalla. Si se omite o es null, se asigna un nombre genérico (por ejemplo, OffscreenArea1). |
onEvent | objeto (fórmula) | Un método de retrollamada que se lanzará cuando el área fuera de pantalla esté lista. Puede ser:
El método de retrollamada se puede utilizar para acceder al objeto 4D View Pro. Ver Variable objeto de formulario de 4D View Pro. |
autoQuit | booleano | True (valor predeterminado) si el comando debe detener la ejecución de la fórmula cuando se producen los eventos On End URL Loading o On URL Loading Error. Si es false, debe utilizar los comandos CANCEL o ACCEPT en el método de retrollamada onEvent. |
timeout | real | Tiempo máximo (expresado en segundos) antes de que el área se cierre automáticamente si no se genera ningún evento. Si se define en 0, no se aplica ninguna limitación. Valor predeterminado: 60 |
result | mixto | Resultado del proceso (si lo hay) |
<customProperty> | mixto | Todo atributo personalizado que esté disponible en el método de retrollamada onEvent. |
Propiedad | Tipo | Descripción |
timeoutReached | booleano | Agregado con el valor true si se ha excedido el tiempo de espera |
Nota: el área fuera de pantalla solo está disponible durante la ejecución del comando VP Run offscreen area. Se destruirá automáticamente una vez que la ejecución haya finalizado.
En el método de retrollamada se pueden utilizar los siguientes comandos:
Desea crear un área 4D View Pro fuera de la pantalla y obtener el valor de una celda:
// Declaración de la clase OffscreenArea
Class constructor
C_TEXT($1)
This.filePath:=$1
// Esta función se llamará en cada evento del área fuera de pantalla
Function onEvent
Case of
:(FORM Event.code=On VP Ready)
VP IMPORT DOCUMENT(This.area;This.filePath)
This.result:=VP Get value(VP Cell(This.area;6;22))
ALERT("La celda G23 contiene el valor: "+String(This.result))
End case
El método de retrollamada OffscreenArea:
$o:=cs.OffscreenArea.new()
$result:=VP Run offscreen area($o)
Quiere cargar un documento grande fuera de la pantalla, esperar a que todos los cálculos terminen de evaluarse y exportarlo como un PDF:
//OffscreenArea class declaration
class constructor($pdfPath Text)
This.pdfPath:=$pdfPath
This.autoQuit:=False
This.isWaiting:=False
Function onEvent
Case of
:(FORM Event.code=On VP Ready)
// Importación del documento
VP IMPORT DOCUMENT(This.area;$largeDocument4VP)
This.isWaiting:=True
// Inicie un temporizador para verificar si todos los cálculos han terminado.
// Si durante este periodo se lanza "On VP Range Changed", el temporizador se reiniciará
// El tiempo debe ser definido según la configuración del ordenador.
SET TIMER(60)
:(FORM Event.code=On VP Range Changed)
// Fin del cálculo detectado. Reiniciar el temporizador
If(This.isWaiting)
SET TIMER(60)
End if
:(FORM Event.code=On Timer)
// Para asegurarse de no reiniciar el temporizador si llama a otros comandos 4D View después de este punto
This.isWaiting:=False
// Detener el temporizador
SET TIMER(0)
// Iniciar la exportación en PDF
VP EXPORT DOCUMENT(This.area;This.pdfPath;New object("formula";Formula(ACCEPT)))
:(FORM Event.code=On URL Loading Error)
CANCEL
End case
El método de retrollamada OffscreenArea:
$o:=cs.OffscreenArea.new()
$result:=VP Run offscreen area($o)
Producto: 4D
Tema: Lenguaje 4D View Pro
Número
905271
Creado por: 4D v18 R4
4D View Pro ( 4D v19)