15.10.2012 Views

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ACTIONSCRIPT 3.0 ENTWICKLERHANDBUCH<br />

Ziehen und Ablegen in AIR<br />

Hineinziehen von Daten in ein HTML-Element<br />

Adobe AIR 1.0 und höher<br />

Gemäß dem Standardverhalten kann nur Text in die editierbaren Bereiche einer Seite eingefügt werden. Sie können<br />

festlegen, dass ein HTML-Element und die ihm untergeordneten Elemente editierbar sein sollen, indem Sie in das<br />

öffnende Tag das Attribut contenteditable einfügen. Sie können auch ein ganzes Dokument editierbar machen,<br />

indem Sie die Eigenschaft designMode des document-Objekts auf "on" setzen.<br />

Um auf einer Seite ein alternatives Verhalten für das Hineinziehen zu definieren, verwenden Sie für alle Elemente, die<br />

gezogene Daten akzeptieren können, die Ereignisse dragenter, dragover und drop.<br />

Aktivieren des Hineinziehens<br />

Adobe AIR 1.0 und höher<br />

Um die Hineinziehbewegung nach eigener Maßgabe zu verarbeiten, müssen Sie zuerst das Standardverhalten<br />

deaktivieren. Definieren Sie für alle HTML-Elemente, die Sie als Ablageziele verwenden wollen, Listener für die<br />

Ereignisse dragenter und dragover. Rufen Sie in den Prozeduren für diese Ereignisse die preventDefault()-<br />

Methode des ausgelösten Ereignisobjekts auf. Durch ein solches Deaktivieren des Standardverhaltens können auch<br />

nicht-editierbare Bereich ein abzulegendes Element aufnehmen.<br />

Abrufen der abgelegten Daten<br />

Adobe AIR 1.0 und höher<br />

In der Prozedur für das Ereignis ondrop können Sie auf die abgelegten Daten zugreifen:<br />

function doDrop(event){<br />

droppedText = event.dataTransfer.getData("text/plain");<br />

}<br />

Lesen Sie mithilfe der Methode dataTransfer.setData() Daten in die Zwischenablage ein und übergeben Sie dabei<br />

den MIME-Typ des zu lesenden Datenformats. Mithilfe der types-Eigenschaft des dataTransfer-Objekts können<br />

Sie herausfinden, welche Datenformate verfügbar sind. Der types-Array enthält den MIME-Typ-String für jedes<br />

verfügbare Format.<br />

Wenn Sie das Standardverhalten in dem Ereignis „dragenter“ oder „dragover“ deaktivieren, sind Sie selbst dafür<br />

verantwortlich, dass abgelegte Daten an der richtigen Stelle im Dokument platziert werden. Es gibt keine API, um eine<br />

Mausposition innerhalb eines Elements in eine Einfügemarke zu konvertieren. Diese Einschränkung macht es<br />

mitunter schwierig, Ziehbewegungen für das Einfügen zu implementieren.<br />

Beispiel: Überschreiben des Standardverhaltens für das<br />

Hineinziehen von Elementen in HTML-Elemente<br />

Adobe AIR 1.0 und höher<br />

In diesem Beispiel wird ein Ablageziel implementiert, das eine Tabelle mit allen im abgelegten Element verfügbaren<br />

Datenformaten anzeigt.<br />

Letzte Aktualisierung 27.6.2012<br />

658

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!