Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com

Home

 
4D v20 R7
Get edited text

Get edited text 


 

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

Der Befehl Get edited text wird hauptsächlich mit dem Formularereignis On After Edit verwendet, um den Text abzurufen, während er eingegeben wird. Er kann auch mit den Formularereignissen On Before Keystroke und On After Keystroke verwendet werden. Weitere Informationen zu diesen Formularereignissen finden Sie in der Beschreibung der Funktion Form event code.

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. Wenn der Bereich z. B. "PA" enthält und der User ein "R" eingibt, gibt Get edited text im Ereignis On Before Keystroke "PA" zurück. Wenn der Bereich zunächst leer ist, 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. Wenn der Bereich z.B. "PA" enthält und der User ein "R" eingibt, gibt Get edited text im Ereignis On After Keystroke "PAR" zurück. 

Beachten Sie, dass das Ereignis On After Keystroke im Allgemeinen durch das Ereignis On After Edit ersetzt werden kann, das mehr Eingabemethoden (wie IME) unterstützt.

Diese Ereignisse werden nur in den betreffenden Objektmethoden erzeugt.

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

Mit der folgenden Methode werden die eingegebenen Zeichen automatisch in Großbuchstaben geschrieben:

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

Hier ist ein Beispiel dafür, wie Sie in ein Textfeld eingegebene Zeichen on the fly verarbeiten können. Die Idee besteht darin, alle Wörter des eingegebenen Satzes in ein anderes Textfeld (namens "Words") zu übertragen. Dazu schreiben Sie den folgenden Code in die Objektmethode des Feldes: 

 If(Form event code=On After Keystroke)
    $RealTimeEntry:=Get edited text
    PLATFORM PROPERTIES($platform)
    If($platform#3) ` Mac OS
       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 code
Is editing text

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Eingabekontrolle
Nummer: 655

 
SEITENINHALT 
 
GESCHICHTE 

Erstellt: 4D v6.5

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v20 R7)