Bonjour,

J'ai un pb de communication entre SWF, voici mon code :

Interface commune aux deux SWF :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
public interface ItfA {
  // du code
}
Dans le swf appelé, la classe principale :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
public class MainB extends MovieClip {
 
  private var a:Itfa;
 
  public function start(_a:ItfA) {
    a = _a;
    // etc
  }
}
Dans le SWF appelant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
public A implements ItfA {
 
  var mLoader:Loader;
 
  [...]
 
   public function startLoad()
  {
    mLoader = new Loader();
    var mRequest:URLRequest = new URLRequest(“B.swf”);
    mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,  onCompleteHandler);
    mLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgressHandler);
    mLoader.load(mRequest);
  }
 
  public function onCompleteHandler(loadEvent:Event)
  {
       var mainB = mLoader.content;
       // ajout au clip principal du swf parent
       mainClip.addChild(mainB);
       mainB.start(this);
  }
  public function onProgressHandler(mProgress:ProgressEvent)
  {
    var percent:Number = mProgress.bytesLoaded/mProgress.bytesTotal;
    trace(percent);
  }
 
 
}
J'ai le problème suivant :
Quand je teste dans l'environnement flash c'est good, quand je teste dans mon navigateur ça pète, il me dit que A n'est pas du type ItfA (TypeError) pour la ligne "mainB.start(this);" => pour lui this n'est pas de type ItfA.

Une idée ?

merci