Adobe Air (wiwobooks.com Release)
formatierter Text
als Rich Text formatierter Text
Text
MIME-Typ
image/x-vnd.adobe.air.bitmap
application/x-vnd.adobe.air. file-list
text/html
text/rtf
text/plain
ein als URL formatierter Text
Ihr eigenes anwendungsspezifisches Format
Tabelle 15.1 Formatkonstanten für die Zwischenablage text/uri-list –
15.1.1 Zwischenablage löschen
Bevor Sie etwas in der Zwischenablage ablegen, sollten Sie diese löschen. Dies ist insbesondere deswegen ratsam, weil Sie mehrere Datentypen gleichzeitig in der Zwischenablage unterbringen können.
Lösungsweg
Aufruf der Instanzmethode clear() der Zwischenablage
So geht es
Der folgende Quelltextausschnitt zeigt das Löschen der Zwischenablage:
import flash.desktop.Clipboard;
Clipboard.generalClipboard.clear();
15.1.2 Daten aus einer AIR-Anwendung in die Zwischenablage kopieren
Wenn Sie Daten aus Ihrer AIR-Anwendung in die Systemzwischenablage kopieren wollen, verwenden Sie hierfür die Methode setData() der Zwischenablage. Die Art der übergebenen Daten geben Sie mit dem Parameter format an. Sie können auch mehrere Datenformate gleichzeitig (bzw. nacheinander für eine Kopieroperation) in die Zwischenablage übertragen und es der empfangenen Anwendung überlassen, das für sie geeignete Format auszuwählen. Denken Sie beispielsweise an ein Bild, das sie gleichzeitig als Bitmap bzw. Datei und MetaInformation in Form von Text übertragen können.
Lösungsweg
1. Vorbereiten der zu kopierenden Daten
2. Aufruf der Methode setData() der Zwischenablage Clipboard.general
Clipboard . Parameter:
Format
Format des Datenobjekts (siehe Tabelle 15.1)
data
Das Datenobjekt
3. Gegebenenfalls Wiederholung ab Schritt 1, falls mehrere Formate gleichzeitig angeboten werden sollen.
So geht es
Das folgende Beispiel einer einfachen Flex-Anwendung kopiert beim Klicken auf den Button den Text einer TextArea -Komponente sowie eine Liste der im Anwendungsverzeichnis enthaltenen Daten in die Zwischenablage:
private function copyText():void {
Clipboard.generalClipboard.clear();
Clipboard.generalClipboard.setData(ClipboardFormats.
TEXT_FORMAT, taSource.text);
Clipboard.generalClipboard.setData(ClipboardFormats.
FILE_LIST_FORMAT, File.applicationDirectory.
getDirectoryListing());
}
]]>
Listing 15.1 Listing 15.1:Beispiel: Kopieren in die Zwischenablage
Sie können die Funktion dieses Beispiels testen, indem Sie den hier in die Zwischenablage kopierten Text in einen Texteditor bzw. die Datei in den Finder/ Datei-Explorer einfügen.
15.1.3 Daten aus der Zwischenablage in eine AIR-Anwendung einfügen
Auch der umgekehrte Weg, das Einfügen von Inhalten aus der Zwischenablage in eine AIR-Anwendung, ist genauso einfach zu bewerkstelligen. Da Sie allerdings nicht immer genau wissen, ob sich die gewünschten Daten auch in der Zwischenablage befinden, sollten Sie zusätzlich das Vorhandensein des entsprechenden Datentyps prüfen, bevor Sie die Daten weiterverarbeiten. Die Zwischenablage in AIR stellt für die Überprüfung des Inhaltsformats die Instanzmethode hasFormat() zur Verfügung, der Sie als Parameter das zu prüfende Inhaltsformat übergeben.
Sie können beim Einfügen der Daten mit dem Parameter transferMode zusätzlich die Art und Weise bestimmen, wie das Objekt übertragen wird. Hierbei wird zwischen einer Referenz auf das Objekt und einer exakten Kopie (Clone) des Objekts unterschieden. Falls Sie mit dem Unterschied zwischen einer Referenz und einer Kopie des Objekts nicht ganz vertraut sind: Bei einer Referenz handelt es sich beim referenzierenden Objekt und beim Originalobjekt um ein und dasselbe Objekt, bei einer Kopie um zwei getrennte Objekte. Auch die Transfermodi sind als Klassenkonstanten definiert – in diesem Fall die der Klasse ClipboardTransferMode . Tabelle 15.2 gibt Ihnen einen Überblick.
Konstante
ClipboardTransferMode.ORIGINAL_ ONLY
ClipboardTransferMode.ORIGINAL_ PREFERRED
ClipboardTransferMode.CLONE_ONLY
ClipboardTransferMode.CLONE_ PREFERRED
Bedeutung
Es wird nur eine Referenz zurückgegeben, wenn möglich, anderenfalls der Wert 0 . Es wird eine Referenz zurückgegeben, falls möglich,
Weitere Kostenlose Bücher