Frage

var tmpDoc = fl.createDocument();
/*..some logic...*/
tmpDoc.addItem({x:0,y:0},item);

Meine JSFL hat den obigen Code.
Und auf der dritten Zeile, erhalte ich ein Dialogfeld:
was hat Titel: „Bibliothekskonflikt lösen“
zwei Optionsfelder: „ersetzen“, „dont ersetzen“
zwei Tasten: "ok", "Abbrechen"

Aufgrund dieses Dialogfeld, muss ich manuell überwachen
die Skriptausführung und klicken Sie auf eine Schaltfläche.

Ich möchte entweder:
1. Unterdrückt diese Art von Dialog boxex zusammen.
2. oder bieten programmatisch eine Standardoption für diese Art von Dialogen.

Wie mache ich es mit JSFL?

War es hilfreich?

Lösung

Sie können versuchen, wenn das Element vorhanden ist zu überprüfen, bevor es in die Bibliothek mit Bibliothek hinzugefügt itemExists () Funktion:

var doc = fl.getDocumentDOM();
var lib = doc.library;
//check if the item already exists first, if so, keep count of symbols with the same name, append random, etc.
if(!lib.itemExists('item')) lib.addNewItem('movie clip','item');
else                        lib.addNewItem('movie clip','item'+Math.random());

HTH

Andere Tipps

Ich war in der Lage, dies zu umgehen. Der Trick besteht darin, dass, wenn Sie ein neues Element hinzufügen, es auf der obersten Ebene der Bibliothek und sucht nach Konflikten landet dort, auch wenn es eine „identisch“ Punkt irgendwo in einem Bibliotheksordner.

Und wenn Sie ein Bibliothekselement mit JSFL (library.moveToFolder) an die Position des gleichen Elements in einem Ordner verschieben, wird das Element ersetzt und kein Konfliktdialog angezeigt.

  1. Wenn möglich, manuell das Bibliothekselement bewegen, dass Sie von der obersten Ebene der Bibliothek in einen Ordner mögen. Dies erfolgt nur einmal und ist eine permanente Änderung Ihrer Bibliotheksstruktur.
  2. Im Skript Zeit, wie Sie jedes Element in das Dokument einfügen, rufen library.moveToFolder (folderPath, ItemPath, true);
  3. Das wird das Element im Ordner überschreiben und lassen Sie die Eingabeaufforderung

Ihre genaue Vorgehensweise kann unterschiedlich sein, je nach Bedarf, aber der Schlüssel ist, um keine Elemente hat an der Spitze der Bibliothek, während Sie hinzufügen. Bewegen Sie sie woanders zuerst.

Wie üblich Biege für Flash rückwärts über! Hoffe, das hilft.

P. S. Dies funktioniert auch für Komponenten zur Bibliothek hinzugefügt wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top