2009-07-07 4 views
0

Mon application a un certain nombre d'instances de classe AS3 identiques:points à la classe par référence

var Pan1:Panel = new Panel(etc); 
var Pan2:Panel = new Panel(etc); 
var Pan3:Panel = new Panel(etc); 
var Pan4:Panel = new Panel(etc); 

L'un de ces cas est manipulé à la fois. Je voudrais faire référence à cette instance « actif » comme:

var ActivePanel:Panel = Pan3; 

Mais de telle sorte que lorsque je change: ActivePanel.property1, cela change automatiquement l'instance d'origine (à savoir Pan3.property1).

J'ai cherché Google pour une réponse, mais je devine avec la mauvaise question ... Quelqu'un peut-il s'il vous plaît indiquer comment faire cela?

Merci beaucoup!

David

+1

Cela devrait fonctionner exactement comme vous l'avez décrit car les deux variables ne sont que des références à l'instance d'origine. –

+0

Et c'est le cas! Note à moi-même: "la prochaine fois que vous vérifierez votre code ..." Merci James pour votre réponse. Une erreur dans mon code, et quelques heures gaspillées. Merci encore! –

+0

Pas de problème mec :) –

Répondre

-2

Vous devrez étendre la classe de groupe pour créer une nouvelle classe (appelée clonedLabel pour, par exemple) et créer une méthode clone ...

Ceci est un code psuedo ...

<mx:Panel> 

    <mx:Script> 
     <![CDATA[ 

      public function clone():ClonedPanel{ 

        var clonedLabel:ClonedPanel= new ClonedPanel(); 

        // code here to construct new Panel 
        . 
        . 
        . 

        return clonedLabel; 

     ]]> 
    </mx:Script> 


<mx:Panel> 
Questions connexes