Hier ein einfaches Beispiel, das zeigt, wie Drag-and-Drop mit Adobe AIR funktioniert. Man kann eine Datei auf die markierte Fläche ziehen. Daraufhin wird unterhalb der Dateiname angezeigt. Auch mehrere Dateien können gleichzeitig gezogen werden.
Als Authoringumgebung wurde Flash CS3 verwendet. Über die Flash-Extension für Adobe AIR hatte ich bereits berichtet. Sie wurde heute aktualisiert für Version 1.0 von Adobe AIR.
Der Code des Beispiels lautet:
-
import flash.filesystem.File;
-
import flash.events.NativeDragEvent;
-
import flash.desktop.*;
-
-
// event listener hinzufügen
-
dropBox.addEventListener(NativeDragEvent.NATIVE_DRAG_ENTER, onDrag);
-
dropBox.addEventListener(NativeDragEvent.NATIVE_DRAG_DROP, onDrop);
-
-
-
function onDrag(evt:NativeDragEvent):void {
-
-
// akzeptieren, das Dateien auf dieses Object gezogen werden können; (+) erscheint
-
NativeDragManager.acceptDragDrop(dropBox);
-
}
-
-
-
-
function onDrop(evt:NativeDragEvent):void {
-
-
// files als array abspeichern
-
var dropFiles:Array = evt.clipboard.getData(ClipboardFormats.FILE_LIST_FORMAT) as Array;
-
-
// Für jedes File
-
for each (var file:File in dropFiles) {
-
-
// Texthinweis ausgeben
-
addText (file.nativePath);
-
-
}
-
-
}
-
-
-
-
function addText(path:String) {
-
-
// MAC OS X: file:// davorhöngen
-
if ( Capabilities.os.search("Mac")>= 0 ) {
-
path = "file://" + path + "\n";
-
}
-
-
myTextField.appendText (path);
-
-
-
}
Download: Quelldateien (.zip)
Link: Adobe AIR Update für Flash CS3
3 Kommentare zum Beitrag "Adobe AIR: Drag and Drop mit Flash"
[…] Tutorial 3: Badges für Adobe AIR Tutorial 2: AIR: “Datei öffnen”-Dialog des Betriebsystems verwenden Tutorial 1: Adobe AIR: Drag and Drop mit Flash […]
[…] Paste in die Zwischenablage Fenstergrößen verändern Taskleiste von Windows blinken lassen Drag & Drop Konfigurationsdatei in XML schreiben und Lesen Einsatz von […]
Zitat:
// MAC OS X: file:// davorhöngen
Hehe. Endlich einer, der deine Tutorials auch wirklich durchgeht :-)
Dankeschön.
Schreibe einen Kommentar