• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flex und AIR > Flex programmieren

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 31-08-2010, 11:15   #1 (permalink)
Neuer User
 
Benutzerbild von Silver_Surfer
 
Registriert seit: Sep 2009
Beiträge: 229
Question Externe SWF in Flex einbinden mit Flashvars und Funktionen?

Hallo FFler,

ich möchte eine externe SWF in meine Flex App einbinden, es handelt sich hierbei um einen Chat.

PHP-Code:

private var swfLoader:Loader = new Loader();
private var 
urlRequest:URLRequest = new URLRequest("http://mydomain.com/chat.swf?displayname=123&genre=male")
            

swfLoader.contentLoaderInfo.addEventListener(Event.COMPLETEcompleteHandler);
                
swfLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESSonProgressHandler);

this.swfLoader.load(urlRequest);


-> 
on complete
this
.myUIcomp.addChild(swfLoader); 

Ich bekomme den Chat auch angezeigt naja zumindest den Ladebalken das wars dann aber auch schon. Er läd den einfach nicht weiter (der Chat hat am anfang eine Lade-Animation). Hat jemand eine Idee wie man das lösen kann?

MfG SS
Silver_Surfer ist offline   Mit Zitat antworten
Alt 03-09-2010, 13:11   #2 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 11.856
Wieso nutzt du nicht den SWFLoader?
Omega Psi ist offline   Mit Zitat antworten
Alt 04-09-2010, 14:50   #3 (permalink)
Neuer User
 
Benutzerbild von Silver_Surfer
 
Registriert seit: Sep 2009
Beiträge: 229
Question

Ja das habe ich auch versucht, aber damit bekomme ich nichtmal eine Anzeige des Flashs hin. Kann man denn mit dem SWFLoader auch nicht-lokale swf files einbinden?
Silver_Surfer ist offline   Mit Zitat antworten
Alt 04-09-2010, 14:55   #4 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 11.856
Was heisst "nicht lokal"? Es gibt Security Richtlinien, die man einhalten muss in Webanwendungen. Loggst du Fehler mit?
Omega Psi ist offline   Mit Zitat antworten
Alt 04-09-2010, 15:18   #5 (permalink)
Neuer User
 
Benutzerbild von Silver_Surfer
 
Registriert seit: Sep 2009
Beiträge: 229
Ja weiss ich doch, hab mir auch extra nen VHost dafür angelegt, das sollte funktionieren. Zumindest von den Rechten her. Die Frage ist jetzt nur wieso Anzeige aber sonst nicht?

Geändert von Silver_Surfer (04-09-2010 um 15:22 Uhr)
Silver_Surfer ist offline   Mit Zitat antworten
Alt 05-09-2010, 12:39   #6 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 11.856
Sorry, ohne vernünftige Aussagen über das Ladeverhalten sieht es erstmal mau aus, hast du mal die ausgeben lassen, was passiert? Ausserdem: was sagt der Debugger?
Code:
package utils
{

    public function getLogMessage(level:int, className:String, methodName:String, message:String = null):String
    {
        var l:String = level == 1000 ? "[FATAL]" :
                            level == 8 ? "ERROR]" :
                                    level == 6 ? "[WARN]" :
                                        level == 4 ? "[INFO]" :
                                            level == 2 ? "[DEBUG]" : "[ALL]";

        return l += " " + className + "." + methodName + (message ? "\t" + message : "");
    }
}
Code:
<?xml version="1.0"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark"
               xmlns:mx="library://ns.adobe.com/flex/mx" preinitialize="preinitializeHandler(event)">
    <fx:Script>
        <![CDATA[

            import mx.events.FlexEvent;
            import mx.logging.ILogger;
            import mx.logging.ILoggingTarget;
            import mx.logging.Log;
            import mx.logging.LogEventLevel;
            import mx.logging.targets.TraceTarget;

            import utils.getLogMessage;

            private var _qualifiedClassName:String;

            private var _logger:ILogger;

            private function initializeLogger():void
            {
                _qualifiedClassName = getQualifiedClassName(this).split("::").join(".");

                var target:ILoggingTarget = new TraceTarget();
                target.level = LogEventLevel.ALL;

                Log.addTarget(target);

                _logger = Log.getLogger(getQualifiedClassName(_qualifiedClassName));
            }

            private function preinitializeHandler(event:FlexEvent):void
            {
                initializeLogger();
                _logger.info(getLogMessage(LogEventLevel.INFO,
                        _qualifiedClassName, "preinitializeHandler"));
            }

            private function swfLoader_creationCompleteHandler(event:FlexEvent):void
            {
                _logger.info(getLogMessage(LogEventLevel.INFO,
                        _qualifiedClassName, "swfLoader_creationCompleteHandler"));
            }

            private function swfLoader_completeHandler(event:Event):void
            {
                _logger.info(getLogMessage(LogEventLevel.INFO,
                        _qualifiedClassName, "swfLoader_completeHandler"));
            }

            private function swfLoader_ioErrorHandler(event:IOErrorEvent):void
            {
                _logger.error(getLogMessage(LogEventLevel.ERROR,
                        _qualifiedClassName, "swfLoader_ioErrorHandler"));
            }

            private function swfLoader_progressHandler(event:ProgressEvent):void
            {
                _logger.info(getLogMessage(LogEventLevel.INFO,
                        _qualifiedClassName, "swfLoader_progressHandler"));
            }
        ]]>
    </fx:Script>

    <mx:SWFLoader id="swfLoader" complete="swfLoader_completeHandler(event)"
                  creationComplete="swfLoader_creationCompleteHandler(event)"
                  ioError="swfLoader_ioErrorHandler(event)"
                  progress="swfLoader_progressHandler(event)"/>
</s:Application>
Wenn du mit der UIComponent Lösung arbeitest kann es sein, dass das Measuring der Komponte dazu führt, dass du nichts siehst.
Omega Psi ist offline   Mit Zitat antworten
Alt 08-09-2010, 16:18   #7 (permalink)
Neuer User
 
Benutzerbild von Silver_Surfer
 
Registriert seit: Sep 2009
Beiträge: 229
Moin, hab das so jetzt mal eingebaut aber leider mit dem gleichen Resultat.
Btw wie bekomme ich nen Dump von dem Logger?

Geändert von Silver_Surfer (08-09-2010 um 16:26 Uhr)
Silver_Surfer ist offline   Mit Zitat antworten
Alt 08-09-2010, 17:47   #8 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 11.856
Sorry, aber es macht wenig Spass nur zu raten. Was für Logs/traces bekommst du? Was sagt der Debugger?
Omega Psi ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Flash CS3] SWF mit flashvars in vorhandenes SWF einbinden screamfine Flash Einsteiger 0 25-03-2010 08:28
Flex: swc in AS3-Projekt einbinden olbu ActionScript 3 1 17-12-2008 07:17
Klasse in Flex einbinden m00nk Flex programmieren 4 11-12-2008 13:34
Funktionen zur laufzeit einbinden Jochi ActionScript 3 15 23-10-2008 17:02
externe swf und deren funktionen uncle.sam Flash Einsteiger 4 21-08-2008 17:46


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:40 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele