Saltar al contenido principal
Versión: v20

On After Edit

CodePuede ser llamado porDefinición
45Área 4D View Pro - Área 4D Write Pro - Combo Box - Formulario - Entrada - Lista jerárquica - List Box - Columna List BoxEl contenido del objeto introducible que tiene el foco acaba de ser modificado

Descripción

Caso general

Este evento se puede utilizar para filtrar la entrada de datos en los objetos editables por teclado en el nivel más bajo.

Cuando se utiliza, este evento se genera después de cada cambio realizado en el contenido de un objeto editable, independientemente de la acción que haya provocado la modificación, es decir:

  • Acciones de edición estándar que modifican el contenido como pegar, cortar, borrar o cancelar;
  • Soltar un valor (acción similar a pegar);
  • Toda entrada de teclado realizada por el usuario; en este caso, el evento On After Edit se genera después de los eventos On Before Keystroke y On After Keystroke, si se utilizan.
  • Cualquier modificación realizada mediante un comando del lenguaje que simule una acción del usuario (es decir, POST KEY).

En el evento On After Edit, los datos de texto introducidos son devueltos por el comando Get edited text.

4D View Pro

El objeto devuelto por el comando FORM Event contiene:

PropiedadTipoDescripción
codeentero largoOn After Edit
descriptiontext"On After Edit"
objectNametextNombre del área 4D View Pro
sheetNametextNombre de la hoja del evento
actiontext"editChange", "valueChanged", "DragDropBlock", "DragFillBlock", "formulaChanged", "clipboardPasted"

En función del valor de la propiedad action, el objeto evento contendrá propiedades adicionales.

action = editChange

PropiedadTipoDescripción
rangeobjectRango de celdas
editingTextvariantEl valor proveniente del editor actual

action = valueChanged

PropiedadTipoDescripción
rangeobjectRango de celdas
oldValuevariantValor de la celda antes de la modificación
newValuevariantValor de la celda luego de la modificación

action = DragDropBlock

PropiedadTipoDescripción
fromRangeobjectRango de celdas fuente (que se arrastra)
toRangeobjectRango de la celda de destino (ubicación de soltar)
copybooleanIndica si el rango fuente se copia o no
insertbooleanIndica si el rango fuente se inserta o no

action = DragFillBlock

PropiedadTipoDescripción
fillRangeobjectGama utilizada para el relleno
autoFillTypelongintValor utilizado para el relleno.
  • 0: las celdas se llenan con todos los datos (valores, formato y fórmulas)
  • 1: las celdas se llenan con datos automáticamente secuenciales
  • 2: Las celdas se llenan sólo con el formato
  • 3: Las celdas se llenan de valores pero sin formato
  • 4: Se eliminan los valores de las celdas
  • 5: Las celdas se llenan automáticamente
  • action = formulaChanged

    PropiedadTipoDescripción
    rangeobjectRango de celdas
    formulatextLa fórmula introducida

    action = clipboardPasted

    PropiedadTipoDescripción
    rangeobjectRango de celdas
    pasteOptionentero largoIndica lo que se pega desde el portapapeles:
  • 0: se pega todo (valores, formato y fórmulas)
  • 1: solo se pegan los valores
  • 2: sólo se pega el formato
  • 3: solo se pegan las fórmulas
  • 4: los valores y el formato se pegan (no las fórmulas)
  • 5: las fórmulas y el formato se pegan (no los valores)
  • pasteDataobjectLos datos del portapapeles a pegar
  • "text" (texto): el texto del portapapeles
  • "html" (texto): el código HTML del portapapeles
  • Ejemplo

    Aquí hay un ejemplo de manejo de un evento On After Edit:

     If(FORM Event.code=On After Edit)
    If(FORM Event.action="valueChanged")
    ALERT("WARNING: You are currently changing the value\
    from "+String(FORM Event.oldValue)+\
    " to "+String(FORM Event.newValue)+"!")
    End if
    End if
    End if
    End if

    El ejemplo anterior podría generar un objeto evento como este:

    {

    "code":45;
    "description":"On After Edit";
    "objectName":"ViewProArea"
    "sheetname":"Sheet1";
    "action":"valueChanged";
    "range": {area:ViewProArea,ranges:[{column:1,row:2,sheet:1}]};
    "oldValue":"The quick brown fox";
    "newValue":"jumped over the lazy dog";
    }