Saltar al contenido principal
Versión: Siguiente

INVOKE ACTION

INVOKE ACTION ( accion {; objetivo} )

ParámetroTipoDescripción
accionTextNombre o patrón de acción estándar incluyendo parámetro si es necesario
objetivoIntegerDefine donde ejecutar la acción: formulario actual (por defecto) o formulario principal

Este comando no es hilo seguro, no puede ser utilizado en código apropiativo.

Descripción

El comando INVOKE ACTION activa la acción estándar definida por el parámetro accion, opcionalmente en el contexto objetivo.

En accion, pase el nombre de la acción estándar a ejecutar. Puede ser una cadena o una constante del tema Acción estándar. Algunas acciones aceptan un elemento de destino y parámetros. En este caso, debe utilizar el patrón solicitado, por ejemplo "gotoPage?value=2" or paragraph/backgroundPositionV?value=top.

Todas las acciones disponibles se listan en la sección Acciones estándar del manual de Diseño 4D.

Nota: también se ofrecen acciones específicas adicionales para los documentos 4D Write Pro. Se detallan en la sección Utilizar las acciones estándar 4D Write Pro del manual de referencia de 4D Write Pro.

En objetivo, puede pasar el contexto del formulario en el que se debe ejecutar la accion. Puede utilizar una de las siguientes constantes del tema Acción estándar:

ConstanteTipoValorComentario
ak current formEntero largo1El formulario actual es el formulario donde se llamó la acción. Podría ser el formulario principal o un formulario tipo paleta delante del formulario principal del proceso actual.
ak main formEntero largo2El formulario principal es el documento más adelante o el formulario diálogo del proceso, excluyendo cualquier ventana flotante o emergente.

Nota: si se omite objetivo, se utiliza por defecto el contexto ak current form.

Dependiendo del objetivo, la ejecución del comando INVOKE ACTION es síncrona o asíncrona:

  • Con ak current form como objetivo, el comando INVOKE ACTION es síncrono; La acción se ejecuta en el ciclo actual en el momento en que se llama al comando.
  • Con ak main form como objetivo, el comando INVOKE ACTION es asíncrono; La acción se ejecuta en el siguiente ciclo después del final de la ejecución del método objeto de formulario.

Nota: las acciones de edición estándar (Cortar, Copiar, Pegar, Seleccionar todo, Borrar, Deshacer/Rehacer) ignoran el parámetro objetivo, si se pasa. Tales acciones se ejecutan siempre de forma sincrónica en el contexto del objeto editable que tiene el foco.

El comando INVOKE ACTION no genera un error, por ejemplo, si la acción solicitada no está disponible en el contexto actual. Debe validar la acción esperada utilizando el comando Action info.

Ejemplo 1

Desea ejecutar la acción estándar Copiar en el formulario actual:

 INVOKE ACTION(ak copy;ak current form)

Ejemplo 2

Usted desea ejecutar una acción estándar Goto page (página 3) en el formulario principal:

 INVOKE ACTION(ak goto page+"?value=3";ak main form)

Ver también

Action info