Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash > AS3
AS3 Questions relatives à la programmation ActionScript 3 (Cours AS3)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/12/2011, 15h52   #1
Nouveau Membre du Club
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 39
Points : 39
Par défaut Lire un swf externe

Bonjour,

J'ai un souci. J'essaie de lire ce fichier externe swf depuis mon application fla.
J'ai beau essayé 10.000 choses:

Code :
1
2
3
4
5
6
7
8
import flash.net.URLRequest;
import flash.display.Loader;
 
var url:URLRequest = new URLRequest();
url.url = "44.swf";
var loader:Loader = new Loader();
loader.load(url);
addChild(loader);
rien ne passe. Il me sort:

Code :
1
2
TypeError: Error #1009: Il est impossible d'accéder à la propriété ou à la méthode d'une référence d'objet nul.
	at Application()
Je n'ai que ce swf ! Je ne comprends pas ce qu'il veut.
J'arrive à lire ce swf seul via flash pourtant.

Merci de votre aide !!!

A+
Coincoin22
Fichiers attachés
Type de fichier : swf 44.swf (12,9 Ko, 6 affichages)
coincoin22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/12/2011, 23h10   #2
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 279
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 279
Points : 2 327
Points : 2 327
Bonjour,

c'est simplement parce qu'au moment de ton addChild, le swf n'est pas chargé.

Il te faut utiliser ton addChild sur l'event Event.COMPLETE positionné sur la propriété contentLoaderInfo de ton loader.

PS: un coup de t'aurais donné la réponse rapidement
__________________
Je ne réponds pas aux questions envoyées par mp
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/12/2011, 09h05   #3
Nouveau Membre du Club
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 39
Points : 39
Merci pour ta réponse mais honnêtement j'ai cherché avant de poser la question.

Je suis newbie et je galère...
Pourrais-tu me donner un extrait de code qui fonctionne ?

Merci de ton aide précieuse.

Coincoin22
coincoin22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/12/2011, 10h03   #4
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 279
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 279
Points : 2 327
Points : 2 327
La page asdoc officielle par exemple...
__________________
Je ne réponds pas aux questions envoyées par mp
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/12/2011, 16h07   #5
Nouveau Membre du Club
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 39
Points : 39
Désolé mais je patauge grave !!!

J'ai crée une classe appli (appli.as)

Code :
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package {
    import flash.display.Loader;
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.URLRequest;
 
    public class appli extends Sprite {
        private var url:String = "44.swf";
 
        public function LoaderExample() {
            var loader:Loader = new Loader();
            configureListeners(loader.contentLoaderInfo);
            loader.addEventListener(MouseEvent.CLICK, clickHandler);
 
            var request:URLRequest = new URLRequest(url);
            loader.load(request);
 
            addChild(loader);
        }
 
        private function configureListeners(dispatcher:IEventDispatcher):void {
            dispatcher.addEventListener(Event.COMPLETE, completeHandler);
            dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
            dispatcher.addEventListener(Event.INIT, initHandler);
            dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            dispatcher.addEventListener(Event.OPEN, openHandler);
            dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            dispatcher.addEventListener(Event.UNLOAD, unLoadHandler);
        }
 
        private function completeHandler(event:Event):void {
            trace("completeHandler: " + event);
        }
 
        private function httpStatusHandler(event:HTTPStatusEvent):void {
            trace("httpStatusHandler: " + event);
        }
 
        private function initHandler(event:Event):void {
            trace("initHandler: " + event);
        }
 
        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }
 
        private function openHandler(event:Event):void {
            trace("openHandler: " + event);
        }
 
        private function progressHandler(event:ProgressEvent):void {
            trace("progressHandler: bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
        }
 
        private function unLoadHandler(event:Event):void {
            trace("unLoadHandler: " + event);
        }
 
        private function clickHandler(event:MouseEvent):void {
            trace("clickHandler: " + event);
            var loader:Loader = Loader(event.target);
            loader.unload();
        }
    }
}
Puis dans mes paramètres de publication >> appli

Mais rien ne s'affiche ??!!
coincoin22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h15.


 
 
 
 
Partenaires

Hébergement Web