4D v16.3

ST Get expression

Home

 
4D v16.3
ST Get expression

ST Get expression 


 

ST Get expression ( {* ;} Objekt {; StartAusw {; EndeAusw}} ) -> Funktionsergebnis 
Parameter Typ   Beschreibung
Operator in Mit Stern: Objekt ist Objektname (String)
Ohne Stern: Objekt ist Feld oder Variable
Objekt  Formularobjekt in Objektname (mit *) oder Feld bzw. Variable (ohne *)
StartAusw  Lange Ganzzahl in Start der Auswahl
EndeAusw  Lange Ganzzahl in Ende der Auswahl
Funktionsergebnis  Text in Bezeichnung des Ausdrucks

Die Funktion ST Get expression gibt den ersten Ausdruck in der aktuellen Auswahl im Feld zurück, definiert im Parameter Objekt und vom Typ formatierter Text oder Variable.

Die Funktion gibt die Bezeichnung des Ausdrucks zurück, der im Objekt eingefügt wurde (zum Beispiel "mymethod" oder "[table1]field1"). Es wird nicht der aktuelle Wert des Ausdrucks zurückgegeben.

Mit dem optionalen Parameter * geben Sie an, dass der Parameter Objekt ein Objektname (String) ist. Hat das Objekt den Fokus, gibt die Funktion beim Ausführen die Information zum Objekt in Bearbeitung zurück. Hat das Objekt keinen Fokus, gibt die Funktion die Information der Datenquelle des Objekts zurück (Variable oder Feld). Ohne diesen Parameter ist Objekt ein Feld oder eine Variable. In diesem Fall übergeben Sie eine Feld- oder Variablenreferenz anstelle eines String (nur Feld oder Variablenobjekt). Die Funktion gibt dann beim Ausführen die Information der Variablen oder des Feldes zurück.

Die optionalen Parameter StartAusw und EndeAusw definieren eine Textauswahl in Objekt. Die Werte StartAusw und EndeAusw geben eine Auswahl im Plain Text, ohne evtl. vorhandene Stil Tags zu berücksichtigen.

  • Übergeben Sie StartAusw und EndeAusw, sucht ST Get expression den Ausdruck innerhalb dieser Auswahl
  • Übergeben Sie nur StartAusw oder ist der Wert von EndeAusw größer als die Gesamtanzahl der Zeichen in Objekt, sucht die Funktion den Ausdruck zwischen StartAusw und dem Textende
  • Lassen Sie StartAusw und EndeAusw weg, sucht die Funktion den Ausdruck in der aktuellen Textauswahl

4D bietet vordefinierte Konstanten, so dass Sie die Auswahlgrenzen in den Parametern StartAusw und EndeAusw automatisch setzen können. Diese Konstanten finden Sie unter dem Thema "Mehrfachstil Text": 

Konstante Typ Wert Kommentar
ST End highlight Lange Ganzzahl -1001 Bestimmt das letzte Zeichen der aktuellen Textauswahl in Objekt (*)
ST End text Lange Ganzzahl 0 Bestimmt das letzte Zeichen des Textes in Objekt
ST Start highlight Lange Ganzzahl -1000 Bestimmt das erste Zeichen der aktuellen Textauswahl in Objekt (*)
ST Start text Lange Ganzzahl 1 Bestimmt das erste Zeichen des Textes in Objekt
  

(*) Um diese Konstante zu nutzen, müssen Sie in Objekt einen Objektnamen verwenden. Übergeben Sie eine Referenz auf ein Feld oder eine Variable, wird der Befehl auf den gesamten Text des Objekts angewendet.

Hinweis: Ist StartAusw größer als EndeAusw (außer EndeAusw ist 0), führt der Befehl nichts aus nicht und die Variable OK wird auf 0 gesetzt.

Wird in der Auswahl kein Ausdruck gefunden, gibt die Funktion einen leeren String zurück.

Bei einem Doppelklick Ereignis prüfen Sie, ob es einen Ausdruck gibt. Wenn ja, zeigen Sie, wo seine Werte gefunden wurden, so dass der Benutzer den eingefügten Ausdruck ändern kann:

 Case of
    :(Form event=On Double Clicked)
       GET HIGHLIGHT(*;"StyledText_t";startSel;endSel)
       If(ST Get content type(*;"StyledText_t";startSel;endSel)=ST Expression type)
          vExpression:=ST Get expression(*;"StyledText_t";startSel;endSel)
          $winRef:=Open form window("Dial_InsertExpr";Movable form dialog box;Horizontally centered;Vertically centered;*)
          DIALOG("Dial_InsertExpr")
          If(OK=1)
             ST INSERT EXPRESSION(*;"StyledText_t";vExpression;startSel;endSel)
             HIGHLIGHT TEXT(*;"StyledText_t";startSel;endSel)
          End if
       End if
 End case

Eine 4D Methode ausführen, wenn ein Benutzerlink angeklickt wurde:

 Case of
    :(Form event=On Clicked)
  //Die Auswahl finden
       HIGHLIGHT TEXT(*;"myText";startSel;endSel)
       If(startSel#endSel) //Es gibt ausgewählten Inhalt
  //Die Art des Inhalts erhalten
          $CT_type:=ST Get content type(*;"myText";startSel;endSel)
          If($CT_type=ST User type//Dies ist ein Benutzerlink
             MyMethod //Eine 4D Methode ausführen
          End if
       End if
 End case



Siehe auch 

ST INSERT EXPRESSION

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Mehrfachstil Text
Nummer: 1287

Dieser Befehl ändert die Systemvariable OK

 
GESCHICHTE 

Erstellt: 4D v14

 
ARTIKELVERWENDUNG

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