Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 19-02-2009, 19:01   #1 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 99
ZUgriff auf Funktionen im anderen SWF

Habe da etwas Mist gebaut. Korrigierter Text steht weiter unten. Danke für jede Hilfe!

Geändert von MaloRox (20-02-2009 um 09:27 Uhr) Grund: Fehler im ausgegebenen Code
MaloRox ist offline   Mit Zitat antworten
Alt 19-02-2009, 20:57   #2 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 99
deadline für das projekt ist verdammt nahe. keiner eine idee? ich dreh hier noch durch
MaloRox ist offline   Mit Zitat antworten
Alt 20-02-2009, 09:26   #3 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 99
Oha habe grad gemerkt, dass ich quasi den falschen Code rein gesetzt habe. Hier noch mal etwas konkreter, auch mit dem leicht akualisierten Code:


Also ich habe das SWF stageAll.swf. Per loader hole ich mir ein contentMain.swf rein und adde es:

Code:
   var contentLoad:Loader = new Loader();
contentLoad.x=15;
contentLoad.y=117;
contentLoad.load(new URLRequest("contents/25/contentMain.swf"));
addChild(contentLoad);

So weit kein Problem. Nun habe ich ein TextField in stageAll.swf:

Code:
var formatPM:TextFormat= new TextFormat();
    formatPM.font= fontName;
    formatPM.color= 0x666666;
    formatPM.size = 12;;

var pmButton:TextField = new TextField();
pmButton.text = "mehr";
pmButton.y = 660;
pmButton.x = 497;
pmButton.autoSize="right";
pmButton.selectable = false;
pmButton.setTextFormat(formatPM)
pmButton.embedFonts = true;
pmButton.antiAliasType=AntiAliasType.ADVANCED;
pmButton.sharpness=0;
pmButton.thickness=100;
addChild(pmButton);

In der contentMain.swf möchte ich jetzt einen EvendListener darauf setzen und damit eine Funktion aufrufen, welche sich in stageAll.swf befindet:

Code:
MovieClip(parent).pmButton.addEventListener(MouseEvent.CLICK,
MovieClip(parent).plusMinusSlide);
Da kommt nun die Fehlermeldung:

TypeError: Error #1034: Typumwandlung fehlgeschlagen: flash.display::Loader@2f48701 kann nicht in flash.display.MovieClip umgewandelt werden.
at contentMain_fla::MainTimeline/contentMain_fla::frame70()

Im Moment weiß ich wirklich nicht, wie ich den Zugriff zwischen den einzelnen SWF hin bekomme. Mag mir da mal bitte wer helfen? Ich bin der Verzweiflung nahe.

Vielen Dank im Voraus!

Malo
MaloRox ist offline   Mit Zitat antworten
Alt 20-02-2009, 14:37   #4 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 152
Habs jetzt nicht ausprobiert, aber das parent deines geladenen swf ist ja der loader. Also müsstest du ja über parent.parent auf die Haupt-swf zugreifen können (loader.parent = swf).
grizu ist offline   Mit Zitat antworten
Alt 20-02-2009, 15:11   #5 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 99
huhu und vielen dank!

habs jetzt so probiert:

Code:
loader.parent.pmButton.addEventListener(MouseEvent.CLICK, loader.parent.plusMinusSlide);
auch kein deut besser

wie ist denn grundlegende die vorgehensweise, wenn man ein SWF in ein anderes rein lädt und von dem eingebetteten auch das reinladende zugreifen will?
MaloRox ist offline   Mit Zitat antworten
Alt 21-02-2009, 09:33   #6 (permalink)
Neuer User
 
Registriert seit: Feb 2009
Beiträge: 99
hab die lösung:

Code:
MovieClip(parent.parent).pmButton.addEventListener(MouseEvent.CLICK, MovieClip(parent.parent).plusMinusSlide);
stop();
vielen dank
MaloRox 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



Alle Zeitangaben in WEZ +1. Es ist jetzt 19:47 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele