2010-06-09 10 views
0

Dernièrement j'essayais de faire des choses expérimentales avec JSFL, et je me demandais s'il est possible d'écouter un événement quand un composant (que j'ai fait) ou movieclip est tiré de la bibliothèque sur la scène. Je veux créer quelque chose que je vais obtenir un composant et le déposer sur un mc. lorsque le composant est déposé sur le mc, le composant enregistre le mc comme référence dans certains var.Drag/Drop événement MovieClip dans JSFL? (IDE Flash)

peut-être avec des événements n'est pas la voie à suivre, mais je n'ai aucune idée si cela est possible ou comment le faire d'une autre manière. J'espère que quelqu'un peut me aider à commencer

thx à l'avance

Répondre

0

Bien que vous puissiez listen for document events, je ne pense pas que vous pouvez déposer un composant sur une movieclip et obtenir la référence du MovieClip. Vous pouvez cependant écrire une commande qui stocke d'abord la référence du clip sélectionné, puis ajoute le composant à la scène, avec la configuration du paramètre mc.

Voici un exemple rapide utilisant le composant Button. La commande get est le nom du mc sélectionné puis ajoute un bouton et définit le nom du mc comme le nom du bouton.

var doc = fl.getDocumentDOM(); 
var mc = doc.selection[0];//get the mc 
doc.selectNone(); 

//add the component 
fl.componentsPanel.addItemToDocument({x:mc.x, y:mc.y}, "User Interface", "Button"); 
//setup parameter 
//use this if you don't know the paramater's index in the list 
setComponentValueByParamName(doc.selection[0],'label',mc.name); 
//otherhise you can get away with 
//doc.selection[0].parameters[2].value = mc.name; 

//returns true if the param was found and value was set, otherwise returns false 
function setComponentValueByParamName(component,param,value){ 
    for(var i = 0 ; i < component.parameters.length; i++){ 
     if(component.parameters[i].name == param){ 
      component.parameters[i].value = value; 
      return true; 
     } 
    } 
    return false; 
} 

Jetez un oeil à fl.componentPanel, ComponentInstance et Parameter pour obtenir une meilleure image.

HTH

Questions connexes