Saltar para o conteúdo principal
Versão: 20 R10 BETA

On After Edit

CodePode ser chamado porDefinição
45Área 4D View Pro - Área 4D Write Pro - Caixa de Combinação - Formulário - Entrada - Lista Hierárquica - List Box - Coluna de List BoxO conteúdo do objecto inserível que tem o foco acabou de ser modificado

Descrição

Caso geral

Este evento pode ser usado para filtrar a entrada de dados nos objetos digitáveis do teclado no nível mais baixo.

Quando é usado, este evento é gerado após cada alteração feita no conteúdo de um objeto inserível, independentemente da ação que causou a alteração, ou seja:

  • Ações de edição padrão que modificam conteúdo como colar, cortar, excluir ou cancelar;
  • Eliminar um valor (ação semelhante a colar);
  • Qualquer entrada de teclado feita pelo usuário; neste caso, o evento On After Edit é gerado após os eventos On Before Keystroke e On After Keystroke, se eles forem utilizados.
  • Qualquer modificação feita usando um comando de linguagem que simula uma ação do usuário (ou seja, POST KEY).

No evento No After Edit, os dados de texto sendo inseridos são retornados pelo comando Obter texto editado.

4D View Pro

O objeto devolvido pelo comando FORM Event contém:

PropriedadeTipoDescrição
codeinteiro longoOn After Edit
descriptiontext"On After Edit"
objectNametextNome da área 4D View Pro
sheetNametextNome da folha do evento
actiontext"editChange", "valueChanged", "DragDropBlock", "DragFillBlock", "formulaChanged", "clipboardPasted"

Dependendo do valor da propriedade action, o objeto do evento irá conter propriedades adicionais.

action = editChange

PropriedadeTipoDescrição
rangeobjectIntervalo de células
editingTextvariantO valor do editor actual

action = valueChanged

PropriedadeTipoDescrição
rangeobjectIntervalo de células
oldValuevariantValor da célula antes da alteração
newValuevariantValor da célula após a alteração

action = DragDropBlock

PropriedadeTipoDescrição
fromRangeobjectIntervalo do células de origem (a ser arrastado)
toRangeobjectIntervalo de células de destino (local de largada)
copybooleanEspecifica se o intervalo fonte é copiado ou não
insertbooleanEspecifica se o intervalo fonte é inserido ou não

action = DragFillBlock

PropriedadeTipoDescrição
fillRangeobjectIntervalo utilizado para o preenchimento
autoFillTypeinteiro longoValue used for the fill.
  • 0: Cells are filled with all data (values, formatting, and formulas)
  • 1: Cells are filled with automatically sequential data
  • 2: Cells are filled with formatting only
  • 3: Cells are filled with values but not formatting
  • 4: Values are removed from the cells
  • 5: Cells are filled automatically
  • fillDirectioninteiro longoDirection of the fill.
  • 0: The cells to the left are filled
  • 1: The cells to the right are filled
  • 2: The cells above are filled
  • 3: The cells below are filled
  • action = formulaChanged

    PropriedadeTipoDescrição
    rangeobjectIntervalo de células
    formulatextA fórmula introduzida

    action = clipboardPasted

    PropriedadeTipoDescrição
    rangeobjectIntervalo de células
    pasteOptioninteiro longoEspecifica o que foi colado na área de transferência:
  • 0: Tudo é colado (valores, formatação, e fórmulas
  • 1: Apenas os valores são colados
  • 2: Apenas a formatação é colada
  • 3: Somente as fórmulas são coladas
  • 4: Os valores e a formatação são colados (não as fórmulas)
  • 5: Fórmulas e formatação são coladas (não os valores)
  • pasteDataobjectOs dados da área de transferência para serem colados
  • "text" (texto): O texto da área de transferência
  • "html" (texto): O HTML da área de transferência
  • Exemplo

    Eis um exemplo de tratamento de um 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

    O exemplo acima poderia gerar um 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";
    }