4D v16.3

Get edited text

Página Inicial

 
4D v16.3
Get edited text

Get edited text 


 

Get edited text -> Resultado 
Parâmetro Tipo   Descrição
Resultado  Texto in Text being entered

O comando Get edited text é utilizado principalmente com o evento de formulário On After Keystroke para recuperar o texto a medida em que é introduzido. Também pode ser utilizado com o evento de formulário On Before Keystroke. Para maior informação sobre estes eventos de formulário, por favor consulte a descrição do comando Form event.

A combinação deste comando com os eventos formulário On Before Keystroke e On After Keystroke funciona da seguinte maneira:

  • Logo como um caractere se escreve no teclado, é gerado o evento On Before Keystroke. Neste caso, a função Get edited text devolve o conteúdo da área  antes de que ocorra a última pulsação de tecla. Por exemplo, se a área contém "PA" e o usuário digita uma "R", Get edited text devolve "PA" no evento On Before Keystroke. Se a área está vazia inicialmente, Get edited text devolve uma cadeia vazia.
  • A continuação, é gerado o evento formulário On After Keystroke. Neste caso, Get edited text devolve o conteúdo da área, incluindo o último caractere introduzido no teclado. Por exemplo, quando a área contém "PA" e o usuário digita uma "R", Get edited text devolve "PAR" no evento On After Keystroke.

Estes dois eventos só são gerados nos métodos objeto em questão.

Quando é utilizado em um contexto diferente ao de entrada de dados em um objeto de formulário, esta função retorna uma string vazia.

O método a seguir converte automaticamente os caracteres introduzidos em maiúsculas:

 If(Form event=On After Keystroke)
    [Viagens]Agências:=Uppercase(Get edited text)
 End if

Este é um exemplo de como processar imediatamente os caracteres introduzidos em um campo tipo texto. A idéia consiste em colocar em outro campo texto (chamado “Palavras”) todas as palavras da frase que estão sendo escritas. Para isso, escreva o seguinte código no método de objeto do campo:

 If(Form event=On After Keystroke)
    $EntradaTempoReal:=Get edited text
    PLATFORM PROPERTIES($platform)
    If($platform#3) ` Mac OS
       Repeat
          $FraseDescomposta:=Replace string($EntradaTempoReal;Char(32);Char(13))
       Until(Position(" ";$FraseDescomposta)=0)
    Else ` Windows
       Repeat
          $FraseDescomposta:=Replace string($EntradaTempoReal;Char(32);Char(13)+Char(10))
       Until(Position(" ";$FraseDescomposta)=0)
    End if
    [Exemplo]Palavras:=$FraseDescomposta
 End if

Nota: este exemplo não é exaustivo porque assumimos que as palavras são separadas unicamente por espaços (Char (32)). Para uma solução completa necessitará adicionar outros filtros para extrair todas as palavras (vírgulas, ponto e vírgula, apóstrofes, etc.).



Ver também 

Form event

 
PROPRIEDADES 

Produto: 4D
Tema: Controle de entrada
Número 655

 
HISTÓRIA 

Criado por: 4D v6.5

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v16)
Manual de linguagem 4D ( 4D v16.1)
Manual de linguagem 4D ( 4D v16.2)
Manual de linguagem 4D ( 4D v16.3)