4D v16.3

Get edited text

Home

 
4D v16.3
Get edited text

Get edited text 


 

Get edited text -> Funktionsergebnis 
Parameter Typ   Beschreibung
Funktionsergebnis  Text in Eingegebener Text

Die Funktion Get edited text wird hauptsächlich mit dem Formularereignis On After Keystroke eingesetzt. Damit finden Sie den Text genauso wieder, wie Sie ihn eingegeben haben. Sie können die Funktion auch mit dem Formularereignis On Before Keystroke verwenden. Weitere Informationen zu diesen Formularereignissen finden Sie in der Beschreibung der Funktion Form event.

Die Kombination dieser Funktion mit den Formularereignissen On Before Keystroke und On After Keystroke funktioniert wie folgt:

  • Sobald ein Zeichen auf der Tastatur getippt wird, wird das Ereignis On Before Keystroke generiert. In diesem Fall gibt Get edited text den Inhalt des Bereichs zurück, bevor die letzte Tasteneingabe passiert. Enthält der Bereich z.B. "PA" und tippt der Benutzer ein "R", gibt Get edited text “PA” im Ereignis On Before Keystroke zurück. Ist der Bereich anfangs leer, gibt Get edited text einen leeren String zurück.
  • Als nächstes wird das Formularereignis generiert. In diesem Fall gibt Get edited text den Inhalt des Bereichs einschließlich der letzten Tasteneingabe zurück. Enthält der Bereich z.B. “PA” und tippt der Benutzer ein “R”, gibt Get edited text “PAR” im Ereignis On After Keystroke zurück.

Diese Funktion gibt in einem Formularobjekt in einem anderen Kontext als Texteingabe einen leeren String zurück.

Folgende Methode wandelt die eingegebenen Zeichen automatisch in Großbuchstaben um:

 If(Form event=On After Keystroke)
    [Trips]Agencies:=Uppercase(Get edited text)
 End if

Folgendes Beispiel zeigt, wie Sie in ein Textfeld eingegebene Zeichen per Programmierung "on the fly" entnehmen. Die Idee dabei ist, alle Wörter des eingegebenen Satzes in ein anderes Textfeld mit Namen "Words" zu setzen. Dazu schreiben Sie in der Objektmethode für dieses Feld folgenden Code:

 If(Form event=On After Keystroke)
    $RealTimeEntry:=Get edited text
    PLATFORM PROPERTIES($platform)
    If($platform#3) ` MacOS
       Repeat
          $DecomposedSentence:=Replace string($RealTimeEntry;Char(32);Char(13))
       Until(Position(" ";$DecomposedSentence)=0)
    Else ` Windows
       Repeat
          $DecomposedSentence:=Replace string($RealTimeEntry;Char(32);Char(13)+Char(10))
       Until(Position(" ";$DecomposedSentence)=0)
    End if
    [Example]Words:=$DecomposedSentence
 End if

Hinweis: Dieses Beispiel ist nicht voll ausgeschöpft, da wir lediglich die Wörter berücksichtigt haben, die durch Leerzeichen (Char (32)) voneinander getrennt sind. Für eine vollständige Lösung müssen Sie weitere Filter hinzufügen, um auch Wörter zu entnehmen, die durch andere Zeichen begrenzt sind, wie z.B. Kommas, Strichpunkte, Apostrophe.



Siehe auch 

Form event

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Eingabekontrolle
Nummer: 655

 
GESCHICHTE 

Erstellt: 4D v6.5

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)