2010-11-15 37 views
2
var tmpDoc = fl.createDocument(); 
/*..some logic...*/ 
tmpDoc.addItem({x:0,y:0},item); 

Mon JSFL a le code ci-dessus.
Et sur la 3ème ligne, je reçois une boîte de dialogue:
qui a le titre: « Résoudre les conflits bibliothèque »
deux options de bouton radio: « remplacer », « Do not remplacer »
deux boutons: « ok », » annuler "JSFL: Suppression/clic automatique sur les boîtes de dialogue

En raison de cette boîte de dialogue, je dois manuellement surveiller
l'exécution du script et cliquez sur un bouton.

Je veux soit:
1. Supprimer complètement ce type de boîte de dialogue.
2. ou de fournir par programme une option par défaut à ce type de boîte de dialogue.

Comment faire avec JSFL?

Répondre

0

Vous pouvez essayer de vérifier si l'élément existe avant de l'ajouter à la bibliothèque en utilisant la fonction de bibliothèque itemExists():

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

1

j'ai pu travailler autour de cela. L'astuce est que lorsque vous ajoutez un nouvel élément, il atterrit au niveau supérieur de la bibliothèque et y recherche des conflits, même s'il y a un élément "identique" quelque part dans un dossier de bibliothèque.

Et lorsque vous déplacez un élément de bibliothèque en utilisant JSFL (library.moveToFolder) à l'emplacement du même élément dans un dossier, l'élément est remplacé et aucune boîte de dialogue de conflit n'apparaît.

  1. Si possible, déplacez manuellement l'élément de bibliothèque que vous souhaitez depuis le premier niveau de la bibliothèque dans un dossier. Ceci est seulement fait une fois et est un changement permanent à la structure de votre bibliothèque.
  2. Au moment du script, lorsque vous ajoutez chaque élément au document, appelez library.moveToFolder (folderPath, itemPath, true);
  3. Cela écrasera l'élément dans le dossier et sauter l'invite

Votre approche exacte peut varier en fonction de vos besoins, mais la clé est de ne pas avoir des éléments en haut de la bibliothèque pendant que vous ajoutez . Déplacez-les d'abord ailleurs.

Comme d'habitude se pencher en arrière pour Flash! J'espère que cela t'aides.

P.S., cela fonctionne également pour ajouter des composants à la bibliothèque.

+0

Ne fonctionne plus dans CS6 lors de l'ajout d'un composant à la bibliothèque à partir du panneau des composants. Seule solution de contournement que j'ai trouvé était d'utiliser un logiciel d'automatisation pour cliquer spécifiquement sur les boîtes de dialogue. –