Pasteboard data size

4D - Documentation   Français   English   German   Spanish   Japanese   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next

Version 11 (Geändert)


Pasteboard data size (DatenTyp) Numerisch

ParameterTypBeschreibung
DatenTypStringString mit 4 Zeichen
FunktionsergebnisNumerischGröße (in Bytes) der in der Zwischenablage
gespeicherten Daten oder Fehlercode

Beschreibung

Mit der Funktion Pasteboard data size prüfen Sie, ob es in der Zwischenablage Daten mit dem in DatenTyp übergebenen Typ gibt.

Warnung: Der in DatenTyp übergebene Wert berücksichtigt die Schreibweise. So ist z.B. "abcd" nicht gleich "ABCD."

Ist die Zwischenablage leer oder enthält keine Daten vom angegebenen Typ, gibt die Funktion einen Fehler -102 zurück. (Siehe Tabelle der vordefinierten Konstanten). Enthält die Zwischenablage Daten vom angegebenen Typ, gibt die Funktion die Größe der Daten in Bytes zurück.

Haben Sie festgestellt, dass die Zwischenablage Daten des entsprechenden Typs enthält, können Sie diese mit folgenden Befehlen aus der Zwischenablage entnehmen:

Enthält die Zwischenablage Daten vom Typ TEXT, erhalten Sie diese entweder mit der Funktion Get text from pasteboard, die einen Textwert zurückgibt, oder mit dem Befehl GET PASTEBOARD DATA, der den Text in einem BLOB zurückgibt.

Enthält die Zwischenablage Daten vom Typ PICT, erhalten Sie diese entweder mit dem Befehl GET PICTURE FROM PASTEBOARD, der das Bild in einem Bilddatenfeld oder einer Variablen zurückgibt, oder mit dem Befehl GET PASTEBOARD DATA, der das Bild in einem BLOB zurückgibt.

Verwenden Sie für alle anderen Datentypen den Befehl GET PASTEBOARD DATA, der die Daten in einem BLOB zurückgibt.

4D bietet folgende vordefinierten Konstanten:

KonstanteTypWert
No such data in clipboardLange Ganzzahl-102
Text dataStringTEXT
Picture dataStringPICT

Beispiele

(1) Nachfolgender Code prüft, ob die Zwischenablage ein Bild enthält. Wenn ja, wird es in eine 4D Variable kopiert:

   If (Pasteboard data size (Picture data) > 0) ` Gibt es ein Bild in der Zwischenablage?
      GET PICTURE FROM PASTEBOARD ($vPicVariable) 
                         ` Wenn ja, entnimm das Bild aus der Zwischenablage 
   Else
      ALERT("Es gibt kein Bild in der Zwischenablage.")
   End if

(2) Anwendungen schneiden normalerweise Daten vom Typ TEXT bzw. PICT aus bzw. kopieren sie in die Zwischenablage, da die meisten Anwendungen zwei Standarddatentypen erkennen. Eine Anwendung kann jedoch mehrere Instanzen derselben Daten in verschiedenen Formaten anfügen. Immer, wenn Sie z.B. Teile einer Tabellenkalkulation ausschneiden bzw. kopieren , könnte die Anwendung die Daten unter dem hypothetischen Format 'SPSH' anfügen, ebensogut aber auch in den Formaten SYLK und TEXT. Dann würde 'SPSH' die Daten gemäß der Datenstruktur enthalten, SYLK dieselben Daten im SYLK Format, das von den meisten anderen Tabellenkalkulationen erkannt wird und TEXT dieselben Daten ohne die Zusatzinformationen in SYLK bzw. 'SPSH'. Vorausgesetzt, Sie kennen die Beschreibung des 'SPSH' Formats und haben alles für die Übertragung von Daten im SYLK Format vorbereitet, können Sie nun Routinen für Ausschneiden/Kopieren/Einsetzen zwischen 4th Dimension und jener hypothetischen Tabellenkalkulation erstellen. Ihr Code könnte folgendermaßen aussehen:

   Case of
         ` Prüfen Sie zuerst, ob die Zwischenablage Daten aus der hypothetischen 
          Tabellenkalkulation enthält
      : (Test clipboard ('SPSH') > 0)
         ` ...
         ` Prüfen Sie dann, ob die Zwischenablage Daten vom Typ Sylk enthält
      : (Test clipboard ('SYLK') > 0)
         ` ...
         ` Prüfen Sie schließlich, ob die Zwischenablage Daten vom Typ Text enthält
      : (Test clipboard ('TEXT') > 0)
         ` ...
   End case

Anders gesagt, Sie versuchen aus der Zwischenablage die Instanz der Daten zu entnehmen, die am meisten Originalinformationen enthält.

(3) Siehe Beispiel zum Befehl APPEND DATA TO PASTEBOARD.

Referenz

GET PASTEBOARD DATA, GET PICTURE FROM PASTEBOARD, Get text from pasteboard.


4D - Documentation   Français   English   German   Spanish   Japanese   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next