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:
[code]
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);
}
[/code]
Download: Quelldateien (.zip)
Link: Adobe AIR Update für Flash CS3
Zitat:
// MAC OS X: file:// davorhöngen
Hehe. Endlich einer, der deine Tutorials auch wirklich durchgeht :-)
Dankeschön.