Version 6.0
Test clipboard (DatenTyp) Numerisch
Parameter | Typ | Beschreibung | |
DatenTyp | String | String mit 4 Zeichen | |
Funktionsergebnis | Numerisch | Größe (in Bytes) der in der Zwischenablage | |
gespeicherten Daten oder Fehlercode |
Beschreibung
Mit der Funktion Test clipboard 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 clipboard, die einen Textwert zurückgibt, oder mit dem Befehl GET CLIPBOARD, 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 CLIPBOARD, der das Bild in einem Bilddatenfeld oder einer Variablen zurückgibt, oder mit dem Befehl GET CLIPBOARD, der das Bild in einem BLOB zurückgibt.
Verwenden Sie für alle anderen Datentypen den Befehl GET CLIPBOARD, der die Daten in einem BLOB zurückgibt.
4th Dimension bietet folgende vordefinierten Konstanten:
Konstante | Typ | Wert |
No such data in clipboard | Lange Ganzzahl | -102 |
Text data | String | TEXT |
Picture data | String | PICT |
Beispiele
(1) Nachfolgender Code prüft, ob die Zwischenablage ein Bild enthält. Wenn ja, wird es in eine 4D Variable kopiert:
If (Test clipboard (Picture data) > 0) ` Gibt es ein Bild in der Zwischenablage? GET PICTURE FROM CLIPBOARD ($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 TO CLIPBOARD.
Referenz
GET CLIPBOARD, GET PICTURE FROM CLIPBOARD, Get text from clipboard.