Hallo,
packe mal deine Flas zusammen und hänge sie hier im Thread mal an bzw. lege sie auf dem Server zum runterladen.
Achtung: Ich habe nur CS3 also speicher bitte die Flas als cs3 ab, sonst kann ich nichts mit anfangen.
Hi ich bin's mal wieder
also erstmal damit ihr wisst worum es geht:
Ich lade auf meiner Seite externe SWF'S klick in einen Mc. Nun habe ich die ganze Zeit damit gekämpft diese immer zentriert zu lassen. Dieses Problem habe ich nun behoben. Es funktioniert soweit auch nur kommt jetzt beim Seitenwechsel die Fehlermeldung:
TypeError: Error #1009: Der Zugriff auf eine Eigenschaft oder eine Methode eines null-Objektverweises ist nicht möglich.
at kontakt_fla::MainTimeline/resizeHandler()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.display::Stage/dispatchEvent()
at medien_fla::MainTimeline/init()
at flash.display:isplayObjectContainer/addChildAt()
at Index_fla::wholeSite_2/showNextPage()
at Index_fla::wholeSite_2/currentPageGone()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at fl.transitions::Tween/set time()
at fl.transitions::Tween/nextFrame()
at fl.transitions::Tween/onEnterFrame()
aber der resize und alles anderen Funktionen laufen weiter so wie sie sollen.
Meine befürchtung ist nun das es dadürch zu komplikationen kommen könnte oder ist meine Angst unbegründet. Wenn nicht wie kann ich dieses Problem beheben.
Mein Script in der Main datei ( ein wenig gekürzt):
und mein Script in den externen SWF'S :PHP-Code:import flash.display.DisplayObjectContainer;
stop();
import noponies.display.FullBrowserBg;
var newBrowserBg:FullBrowserBg = new FullBrowserBg("Background/s-t-i-c-k-background2.jpg", false);
addChildAt(newBrowserBg,0)
var myStage:Stage = this.stage;
myStage.scaleMode = StageScaleMode.NO_SCALE;
myStage.align = StageAlign.TOP_LEFT;
function initialDisplay(event:Event):void {
var swfWidth:int = myStage.stageWidth;
var swfHeight:int = myStage.stageHeight;
var mainmenu_mcYPos:Number = swfHeight - mainmenu_mc.height;
var mainmenu_mcxPos:Number = swfWidth - mainmenu_mc.width;
var widetop_mcYPos:Number = swfHeight - widetop_mc.height;
var widetop_mcXPos:Number = swfWidth - widetop_mc.width;
var widebottom_mcYPos:Number = swfHeight -widebottom_mc.height;
var widebottom_mcxPos:Number = swfWidth - widebottom_mc.width;
var logo_mcYPos:Number = swfHeight - logo_mc.height;
var logo_mcXPos:Number = swfWidth - logo_mc.width;
widetop_mc.y = 0;
widetop_mc.x = 0;
mainmenu_mc.y = swfHeight - mainmenu_mc.height;
mainmenu_mc.x = 0;
widebottom_mc.y = swfHeight - widebottom_mc.height;
widebottom_mc.x = 0;
logo_mc.y = logo_mcYPos / 40 ;
logo_mc.x = logo_mcXPos / 2 ;
}
addEventListener(Event.ENTER_FRAME, initialDisplay);
stop();
import flash.events.MouseEvent;
import fl.transitions.*;
import fl.transitions.easing.*;
import flash.filters.BlurFilter;
//Zeigt welcher Button der erste ist
current = mainmenu_mc.menuBtn1_btn;
//Roll_over & Roll_out Effeckt Listener für alle Buttons
mainmenu_mc.menuBtn1_btn.addEventListener (MouseEvent.ROLL_OVER, buttonover);
mainmenu_mc.menuBtn1_btn.addEventListener (MouseEvent.ROLL_OUT, buttonout);
mainmenu_mc.menuBtn2_btn.addEventListener (MouseEvent.ROLL_OVER, buttonover2);
mainmenu_mc.menuBtn2_btn.addEventListener (MouseEvent.ROLL_OUT, buttonout2);
//zuweisen der Listener bei Klick auf die Menü-Buttons
mainmenu_mc.menuBtn1_btn.addEventListener (MouseEvent.CLICK, buttonClicked);
mainmenu_mc.menuBtn2_btn.addEventListener (MouseEvent.CLICK, buttonClicked);
//Lässt die buttons Aussehn wie buttons (Hand-Cursor erscheint beim hovern)
mainmenu_mc.menuBtn1_btn.buttonMode = true;
mainmenu_mc.menuBtn2_btn.buttonMode = true;
//Lässt es aussehn als wurde der erste Button schon betätigt
mainmenu_mc.menuBtn1_btn.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
//Der Loader wird gebraucht um externe SWF's zu laden
var loader:Loader;
//URLRequest gibt den Pfad zur Ladenen Datei an
var urlRequest:URLRequest;
//Dieser Array hält alle Tweens fest
//somit müsst ihr sie nicht mehr kopieren
var tweens:Array = new Array();
//Fixiert die grade angezeigt Seite
var currentPage:MovieClip = null;
//Fixiert die nächste Seite die wir zeigen wollen
var nextPage:MovieClip = null;
//Roll_over & Roll_out Effeckt für alle Buttons
function buttonover (event:MouseEvent):void{
mainmenu_mc.menuBtn1_btn.gotoAndPlay ("over");
}
function buttonout (event:MouseEvent):void{
mainmenu_mc.menuBtn1_btn.gotoAndPlay ("normal");
}
function buttonover2 (event:MouseEvent):void{
mainmenu_mc.menuBtn2_btn.gotoAndPlay ("over");
}
function buttonout2 (event:MouseEvent):void{
mainmenu_mc.menuBtn2_btn.gotoAndPlay ("normal");
}
//Diese Funktion wird aufgerufen wenn wir einen Button klicken
function buttonClicked (event:Event):void {
//Eine neue LoaderInstanz kreieren
loader = new Loader();
//Drücken wir Button 1 laden wir in meinem Fall Content1
if (event.target == mainmenu_mc.menuBtn1_btn && this != current) {
urlRequest = new URLRequest("Pages/home.swf");
loader.load (urlRequest);
current = mainmenu_mc.menuBtn1_btn;
//Setzt Button 1 auf Aktiv
mainmenu_mc.menuBtn1_btn.mouseEnabled=false;
//Und so die anderen Weiterhin Klickbar
mainmenu_mc.menuBtn2_btn.mouseEnabled=true;
//Dazu ein kleiner Effeckt um den Aktiven Button auch anzuzeigen
mainmenu_mc.menuBtn1_btn.alpha=0.6;
mainmenu_mc.menuBtn1_btn.filters=[new BlurFilter(1.5,1.5,1.5)];
//Und so werden die nicht aktiven wieder zurück gesetzt
mainmenu_mc.menuBtn2_btn.alpha=1;
mainmenu_mc.menuBtn2_btn.filters=[new BlurFilter(0,0,0)];
//Drücken wir Button 2 laden wir dann Content2
else if (event.target == mainmenu_mc.menuBtn2_btn && this != current) {
urlRequest = new URLRequest("Pages/bio.swf");
loader.load (urlRequest);
current = mainmenu_mc.menuBtn2_btn;
//Setzt Button 2 auf Aktiv
mainmenu_mc.menuBtn2_btn.mouseEnabled=false;
//Und so die anderen Weiterhin Klickbar
mainmenu_mc.menuBtn1_btn.mouseEnabled=true;
//Dazu ein kleiner Effeckt um den Aktiven Button auch anzuzeigen
mainmenu_mc.menuBtn2_btn.alpha=0.6;
mainmenu_mc.menuBtn2_btn.filters=[new BlurFilter(1.5,1.5,1.5)];
//Und so werden die nicht aktiven wieder zurück gesetzt
mainmenu_mc.menuBtn1_btn.alpha=1;
mainmenu_mc.menuBtn1_btn.filters=[new BlurFilter(0,0,0)];
//Wir wollen ja wissen wann die nächste Seite fertig geladen ist
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, fileLoaded);
}
//Diese Funktion wird aufgerufen wenn wir die derzeitge Seite fertig geladen haben
function fileLoaded(event:Event):void {
//Dieser Loader enthält die Seite die wir nun zeigen wollen
nextPage = event.target.content;
//Lass die derzeitige Seite vom Bild weg animieren
//Doch vorher müssen wir sichergehn das da eine Seite ist
if(currentPage != null) {
//diese Funktion setzt die Buttons in der Zeit des Tweens ausser Kraft
mainmenu_mc.mouseChildren=false;
//Tween die derzeitige Seite von Links nach rechts
var tweenX:Tween = new Tween(currentPage, "x", Regular.easeOut,
currentPage.x, 500, 1, true);
//Schraubt das Alpha auf Null
var tweenAlpha:Tween = new Tween(currentPage, "alpha", Regular.easeOut,
1, 0, 1, true);
//Bringt die Tweens isn Array
tweens.push(tweenX);
tweens.push(tweenAlpha);
//Gibt bescheid wenn der Tween der derzeitigen Seite fertig gestellt ist
tweenX.addEventListener(TweenEvent.MOTION_FINISH, currentPageGone);
}
//Da ist keine Seite mehr also können wir nun die nächste auf die Bühne holen. Diese function folgt in
//der showNextPage function.
else {
showNextPage();
}
}
//Diese Funktion animiert und zeigt die nächste Seite
function showNextPage():void {
//Setzt die Buttons wieder auf Aktiv
mainmenu_mc.mouseChildren=true;
//Tweened die nächste Seite von Links nach Rechts
var tweenX:Tween = new Tween(nextPage, "x", Regular.easeOut,
-200, 0, 1, true);
//Schraubt das Alpha wieder auf 1 hoch
var tweenAlpha:Tween = new Tween(nextPage, "alpha", Regular.easeOut,
0, 1, 1, true);
//Und die Tweens wieder rein ins Array
tweens.push(tweenX);
tweens.push(tweenAlpha);
//Bringt die nächste Seite auf die Bühne
addChildAt(nextPage,6);
//Die nächste Seite ist nun unsere derzeitige Seite
currentPage = nextPage;
}
//Diese Funktion wird aufgerufen wenn die derzeitige Seite fertig von Bühne getweened wurde
function currentPageGone(event:Event):void {
//entfernt die derzeitige Seite komplett
removeChild(currentPage);
//Zeigt uns die nächste Seite
showNextPage();
}
Hoffe jemand von euch kann mir dabei helfen.PHP-Code:import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
this.addEventListener(Event.ADDED_TO_STAGE, init);
function init(ev:Event):void {
stage.align=StageAlign.TOP_LEFT;
stage.scaleMode=StageScaleMode.NO_SCALE;
stage.addEventListener(Event.RESIZE, resizeHandler);
stage.dispatchEvent(new Event(Event.RESIZE));
}
function resizeHandler(e:Event):void {
page_mc.x = ((stage.stageWidth / 2) - (page_mc.width /2));
page_mc.y = ((stage.stageHeight / 2) - (page_mc.height / 2));
if (page_mc.x <= 10) {
page_mc.x = 10;
}
else {
trace("no change");
}
if (page_mc.y <= 10) {
page_mc.y = 10;
}
else {
trace("no change");
}
}
Dazu käm noch eine Frage. Und zwar wie ich dort noch einen Preloader zum laden der externen SWF'S einbaue. Hate schon überlegt ihn mit in die Externen einzubasteln aber dann wäre der Tween ja schon durch und somit überflüssig. Somit müsste der Preloader aus der Main mit der externen SWF zusammarbeiten..
Vielleicht hättet ihr dafür auch noch einen Tipp.
Wäre euch sehr Dankbar.
Werde die Seite sobald alle Probleme behoben sind als TuT. zur verfügung stellen damit anderen auch geholfen wird.
Schon mal vielen Dank
Gruß
D.
Hallo,
packe mal deine Flas zusammen und hänge sie hier im Thread mal an bzw. lege sie auf dem Server zum runterladen.
Achtung: Ich habe nur CS3 also speicher bitte die Flas als cs3 ab, sonst kann ich nichts mit anfangen.
Gruß
Wanderratte
Gebildet ist,
wer weiß,
wo er findet,
was er nicht weiß.
4bugs
Home
Amazon Wunschzettel
Hi Wanderratte ...
Danke schonmals aber habe das Problem bereits behoben und denke das ich das mit dem Preloader auch noch gebacken bekomme.
Werd sobald die wichtigsten Sachen fertig sind es hier als TUT reinstellen..
Vielen dank nochmal
So also ich habe mir das ganze mit dem Preloader mal angeschaut und steh wieder einmal auf dem schlauch
ich will diesen preloader Colorwheel Preloader1.zip so einarbeiten das er erst den Background lädt und danach jeweils die Seiten.
Bekomm ihn irgendwie nicht auf meinem script gebastelt
vielleicht hat jemand von euch dafür eine Idee?!?!PHP-Code:import flash.display.DisplayObjectContainer;
stop();
// import unserer Backgroundklasse damit der Hintergrund gleichbleibend skaliert wird
import noponies.display.FullBrowserBg;
var newBrowserBg:FullBrowserBg = new FullBrowserBg("Background/s-t-i-c-k-background2.jpg", false);
addChildAt(newBrowserBg,0)
// Liquit Stage für unsere Seite damit alles da bleibt wo es hin soll
var myStage:Stage = this.stage;
myStage.scaleMode = StageScaleMode.NO_SCALE;
myStage.align = StageAlign.TOP_LEFT;
function initialDisplay(event:Event):void {
// Höhen und Breiten definieren
var swfWidth:int = myStage.stageWidth;
var swfHeight:int = myStage.stageHeight;
var mainmenu_mcYPos:Number = swfHeight - mainmenu_mc.height;
var mainmenu_mcxPos:Number = swfWidth - mainmenu_mc.width;
var widetop_mcYPos:Number = swfHeight - widetop_mc.height;
var widetop_mcXPos:Number = swfWidth - widetop_mc.width;
var widebottom_mcYPos:Number = swfHeight - widebottom_mc.height;
var widebottom_mcxPos:Number = swfWidth - widebottom_mc.width;
var logo_mcYPos:Number = swfHeight - logo_mc.height;
var logo_mcXPos:Number = swfWidth - logo_mc.width;
var loader2YPos:Number = swfHeight - loader2.height;
var loader2XPos:Number = swfWidth - loader2.width;
var mainmenuback_mcYPos:Number = swfHeight - mainmenuback_mc.height;
var mainmenuback_mcXPos:Number = swfWidth - mainmenuback_mc.width;
var context_mcYPos:Number = swfHeight - context_mc.height;
var context_mcXPos:Number = swfWidth - context_mc.width;
//Oben positionieren und in der Länge skalieren
widetop_mc.y = 0;
widetop_mc.width = swfWidth;
//Unten positionieren und in der Länge skalieren
widebottom_mc.y = swfHeight - widebottom_mc.height;
widebottom_mc.width = swfWidth;
//Oben positionieren und nicht in der Länge skalieren
mainmenu_mc.y = swfHeight - mainmenu_mc.height - 10 ;
mainmenu_mc.x = 0;
//In der Länge mittig und in der Höhe angepasst positioniert
logo_mc.y = logo_mcYPos / 40 ;
logo_mc.x = logo_mcXPos / 2 ;
//Rechts unten ohne Skalierung positoniert + anpassung
loader2.y = swfHeight - loader2.height + 7;
loader2.x = swfWidth - loader2.width - 10;
//Links unten positioniert und in der Länge skalierbar
mainmenuback_mc.y = swfHeight - mainmenuback_mc.height;
mainmenuback_mc.width = swfWidth;
context_mc.height = swfHeight;
context_mc.width = swfWidth;
}
addEventListener(Event.ENTER_FRAME, initialDisplay);
stop();
import flash.events.MouseEvent;
import fl.transitions.*;
import fl.transitions.easing.*;
import flash.filters.BlurFilter;
//Zeigt welcher Button der erste ist
current = mainmenu_mc.menuBtn1_btn;
//Roll_over & Roll_out Effeckt Listener für alle Buttons
mainmenu_mc.menuBtn1_btn.addEventListener (MouseEvent.ROLL_OVER, buttonover);
mainmenu_mc.menuBtn1_btn.addEventListener (MouseEvent.ROLL_OUT, buttonout);
mainmenu_mc.menuBtn2_btn.addEventListener (MouseEvent.ROLL_OVER, buttonover2);
mainmenu_mc.menuBtn2_btn.addEventListener (MouseEvent.ROLL_OUT, buttonout2);
mainmenu_mc.menuBtn3_btn.addEventListener (MouseEvent.ROLL_OVER, buttonover3);
mainmenu_mc.menuBtn3_btn.addEventListener (MouseEvent.ROLL_OUT, buttonout3);
mainmenu_mc.menuBtn4_btn.addEventListener (MouseEvent.ROLL_OVER, buttonover4);
mainmenu_mc.menuBtn4_btn.addEventListener (MouseEvent.ROLL_OUT, buttonout4);
mainmenu_mc.menuBtn5_btn.addEventListener (MouseEvent.ROLL_OVER, buttonover5);
mainmenu_mc.menuBtn5_btn.addEventListener (MouseEvent.ROLL_OUT, buttonout5);
//zuweisen der Listener bei Klick auf die Menü-Buttons
mainmenu_mc.menuBtn1_btn.addEventListener (MouseEvent.CLICK, buttonClicked);
mainmenu_mc.menuBtn2_btn.addEventListener (MouseEvent.CLICK, buttonClicked);
mainmenu_mc.menuBtn3_btn.addEventListener (MouseEvent.CLICK, buttonClicked);
mainmenu_mc.menuBtn4_btn.addEventListener (MouseEvent.CLICK, buttonClicked);
mainmenu_mc.menuBtn5_btn.addEventListener (MouseEvent.CLICK, buttonClicked);
//Lässt die buttons Aussehn wie buttons (Hand-Cursor erscheint beim hovern)
mainmenu_mc.menuBtn1_btn.buttonMode = true;
mainmenu_mc.menuBtn2_btn.buttonMode = true;
mainmenu_mc.menuBtn3_btn.buttonMode = true;
mainmenu_mc.menuBtn4_btn.buttonMode = true;
mainmenu_mc.menuBtn5_btn.buttonMode = true;
//Lässt es aussehn als wurde der erste Button schon betätigt
mainmenu_mc.menuBtn1_btn.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
//Der Loader wird gebraucht um externe SWF's zu laden
var loader:Loader;
//URLRequest gibt den Pfad zur Ladenen Datei an
var urlRequest:URLRequest;
//Dieser Array hält alle Tweens fest
//somit müsst ihr sie nicht mehr kopieren
var tweens:Array = new Array();
//Fixiert die grade angezeigt Seite
var currentPage:MovieClip = null;
//Fixiert die nächste Seite die wir zeigen wollen
var nextPage:MovieClip = null;
//Roll_over & Roll_out Effeckt für alle Buttons
function buttonover (event:MouseEvent):void{
mainmenu_mc.menuBtn1_btn.gotoAndPlay ("over");
}
function buttonout (event:MouseEvent):void{
mainmenu_mc.menuBtn1_btn.gotoAndPlay ("normal");
}
function buttonover2 (event:MouseEvent):void{
mainmenu_mc.menuBtn2_btn.gotoAndPlay ("over");
}
function buttonout2 (event:MouseEvent):void{
mainmenu_mc.menuBtn2_btn.gotoAndPlay ("normal");
}
function buttonover3 (event:MouseEvent):void{
mainmenu_mc.menuBtn3_btn.gotoAndPlay ("over");
}
function buttonout3 (event:MouseEvent):void{
mainmenu_mc.menuBtn3_btn.gotoAndPlay ("normal");
}
function buttonover4 (event:MouseEvent):void{
mainmenu_mc.menuBtn4_btn.gotoAndPlay ("over");
}
function buttonout4 (event:MouseEvent):void{
mainmenu_mc.menuBtn4_btn.gotoAndPlay ("normal");
}
function buttonover5 (event:MouseEvent):void{
mainmenu_mc.menuBtn5_btn.gotoAndPlay ("over");
}
function buttonout5 (event:MouseEvent):void{
mainmenu_mc.menuBtn5_btn.gotoAndPlay ("normal");
}
//Diese Funktion wird aufgerufen wenn wir einen Button klicken
function buttonClicked (event:Event):void {
//Eine neue LoaderInstanz kreieren
loader = new Loader();
//Drücken wir Button 1 laden wir in meinem Fall Content1
if (event.target == mainmenu_mc.menuBtn1_btn && this != current) {
urlRequest = new URLRequest("Pages/home.swf");
loader.load (urlRequest);
current = mainmenu_mc.menuBtn1_btn;
//Setzt Button 1 auf Aktiv
mainmenu_mc.menuBtn1_btn.mouseEnabled=false;
//Und so die anderen Weiterhin Klickbar
mainmenu_mc.menuBtn2_btn.mouseEnabled=true;
mainmenu_mc.menuBtn3_btn.mouseEnabled=true;
mainmenu_mc.menuBtn4_btn.mouseEnabled=true;
mainmenu_mc.menuBtn5_btn.mouseEnabled=true;
//Dazu ein kleiner Effeckt um den Aktiven Button auch anzuzeigen
mainmenu_mc.menuBtn1_btn.alpha=0.6;
mainmenu_mc.menuBtn1_btn.filters=[new BlurFilter(1.5,1.5,1.5)];
//Und so werden die nicht aktiven wieder zurück gesetzt
mainmenu_mc.menuBtn2_btn.alpha=1;
mainmenu_mc.menuBtn2_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn3_btn.alpha=1;
mainmenu_mc.menuBtn3_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn4_btn.alpha=1;
mainmenu_mc.menuBtn4_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn5_btn.alpha=1;
mainmenu_mc.menuBtn5_btn.filters=[new BlurFilter(0,0,0)];
}
//Drücken wir Button 2 laden wir dann Content2
else if (event.target == mainmenu_mc.menuBtn2_btn && this != current) {
urlRequest = new URLRequest("Pages/bio.swf");
loader.load (urlRequest);
current = mainmenu_mc.menuBtn2_btn;
//Setzt Button 2 auf Aktiv
mainmenu_mc.menuBtn2_btn.mouseEnabled=false;
//Und so die anderen Weiterhin Klickbar
mainmenu_mc.menuBtn3_btn.mouseEnabled=true;
mainmenu_mc.menuBtn4_btn.mouseEnabled=true;
mainmenu_mc.menuBtn5_btn.mouseEnabled=true;
mainmenu_mc.menuBtn1_btn.mouseEnabled=true;
//Dazu ein kleiner Effeckt um den Aktiven Button auch anzuzeigen
mainmenu_mc.menuBtn2_btn.alpha=0.6;
mainmenu_mc.menuBtn2_btn.filters=[new BlurFilter(1.5,1.5,1.5)];
//Und so werden die nicht aktiven wieder zurück gesetzt
mainmenu_mc.menuBtn1_btn.alpha=1;
mainmenu_mc.menuBtn1_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn3_btn.alpha=1;
mainmenu_mc.menuBtn3_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn4_btn.alpha=1;
mainmenu_mc.menuBtn4_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn5_btn.alpha=1;
mainmenu_mc.menuBtn5_btn.filters=[new BlurFilter(0,0,0)];
}
//Drücken wir Button 3 laden wir dann Content3
else if(event.target == mainmenu_mc.menuBtn3_btn && this != current) {
urlRequest = new URLRequest("Pages/medien.swf");
loader.load (urlRequest);
current = mainmenu_mc.menuBtn3_btn;
//Setzt Button 3 auf Aktiv
mainmenu_mc.menuBtn3_btn.mouseEnabled=false;
//Und so die anderen Weiterhin Klickbar
mainmenu_mc.menuBtn1_btn.mouseEnabled=true;
mainmenu_mc.menuBtn2_btn.mouseEnabled=true;
mainmenu_mc.menuBtn4_btn.mouseEnabled=true;
mainmenu_mc.menuBtn5_btn.mouseEnabled=true;
//Dazu ein kleiner Effeckt um den Aktiven Button auch anzuzeigen
mainmenu_mc.menuBtn3_btn.alpha=0.6;
mainmenu_mc.menuBtn3_btn.filters=[new BlurFilter(1.5,1.5,1.5)];
//Und so werden die nicht aktiven wieder zurück gesetzt
mainmenu_mc.menuBtn1_btn.alpha=1;
mainmenu_mc.menuBtn1_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn2_btn.alpha=1;
mainmenu_mc.menuBtn2_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn4_btn.alpha=1;
mainmenu_mc.menuBtn4_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn5_btn.alpha=1;
mainmenu_mc.menuBtn5_btn.filters=[new BlurFilter(0,0,0)];
}
//Drücken wir Button 4 laden wir dann mal eine externe Seite
else if(event.target == mainmenu_mc.menuBtn4_btn && this != current) {
var url:String = "http://www.myspace.com/sticktheoneandonly";
var request:URLRequest = new URLRequest(url);
try {
navigateToURL(request,"_blank"); // blank öffnet eine neue Seite
}
catch (e:Error) {
// handle error here
loader.load (urlRequest);
current = mainmenu_mc.menuBtn4_btn;
//Setzt Button 4 auf Aktiv
mainmenu_mc.menuBtn4_btn.mouseEnabled=false;
//Und so die anderen Weiterhin Klickbar
mainmenu_mc.menuBtn1_btn.mouseEnabled=true;
mainmenu_mc.menuBtn2_btn.mouseEnabled=true;
mainmenu_mc.menuBtn3_btn.mouseEnabled=true;
mainmenu_mc.menuBtn5_btn.mouseEnabled=true;
//Dazu ein kleiner Effeckt um den Aktiven Button auch anzuzeigen
mainmenu_mc.menuBtn4_btn.alpha=0.6;
mainmenu_mc.menuBtn4_btn.filters=[new BlurFilter(1.5,1.5,1.5)];
//Und so werden die nicht aktiven wieder zurück gesetzt
mainmenu_mc.menuBtn1_btn.alpha=1;
mainmenu_mc.menuBtn1_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn2_btn.alpha=1;
mainmenu_mc.menuBtn2_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn3_btn.alpha=1;
mainmenu_mc.menuBtn3_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn5_btn.alpha=1;
mainmenu_mc.menuBtn5_btn.filters=[new BlurFilter(0,0,0)];
}
}
//Drücken wir Button 5 wissen wir das die anderen nicht geklickt wurden und öffnen automatisch die nächste
else {
urlRequest = new URLRequest("Pages/kontakt.swf");
loader.load (urlRequest);
current = mainmenu_mc.menuBtn5_btn;
//Setzt Button 5 auf Aktiv
mainmenu_mc.menuBtn5_btn.mouseEnabled=false;
//Und so die anderen Weiterhin Klickbar
mainmenu_mc.menuBtn1_btn.mouseEnabled=true;
mainmenu_mc.menuBtn2_btn.mouseEnabled=true;
mainmenu_mc.menuBtn3_btn.mouseEnabled=true;
mainmenu_mc.menuBtn4_btn.mouseEnabled=true;
//Dazu ein kleiner Effeckt um den Aktiven Button auch anzuzeigen
mainmenu_mc.menuBtn5_btn.alpha=0.6;
mainmenu_mc.menuBtn5_btn.filters=[new BlurFilter(1.5,1.5,1.5)];
//Und so werden die nicht aktiven wieder zurück gesetzt
mainmenu_mc.menuBtn1_btn.alpha=1;
mainmenu_mc.menuBtn1_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn2_btn.alpha=1;
mainmenu_mc.menuBtn2_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn3_btn.alpha=1;
mainmenu_mc.menuBtn3_btn.filters=[new BlurFilter(0,0,0)];
mainmenu_mc.menuBtn4_btn.alpha=1;
mainmenu_mc.menuBtn4_btn.filters=[new BlurFilter(0,0,0)];
}
//Wir wollen ja wissen wann die nächste Seite fertig geladen ist
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, fileLoaded);
}
//Diese Funktion wird aufgerufen wenn wir die derzeitge Seite fertig geladen haben
function fileLoaded(event:Event):void {
//Dieser Loader enthält die Seite die wir nun zeigen wollen
nextPage = event.target.content;
//Lass die derzeitige Seite vom Bild weg animieren
//Doch vorher müssen wir sichergehn das da eine Seite ist
if(currentPage != null) {
//diese Funktion setzt die Buttons in der Zeit des Tweens ausser Kraft
mainmenu_mc.mouseChildren=false;
//Tween die derzeitige Seite von Links nach rechts
var tweenX:Tween = new Tween(currentPage, "x", Regular.easeOut,
currentPage.x, 500, 1, true);
//Schraubt das Alpha auf Null
var tweenAlpha:Tween = new Tween(currentPage, "alpha", Regular.easeOut,
1, 0, 1, true);
//Bringt die Tweens isn Array
tweens.push(tweenX);
tweens.push(tweenAlpha);
//Gibt bescheid wenn der Tween der derzeitigen Seite fertig gestellt ist
tweenX.addEventListener(TweenEvent.MOTION_FINISH, currentPageGone);
}
//Da ist keine Seite mehr also können wir nun die nächste auf die Bühne holen. Diese function folgt in
//der showNextPage function.
else {
showNextPage();
}
}
//Diese Funktion animiert und zeigt die nächste Seite
function showNextPage():void {
//Setzt die Buttons wieder auf Aktiv
mainmenu_mc.mouseChildren=true;
//Tweened die nächste Seite von Links nach Rechts
var tweenX:Tween = new Tween(nextPage, "x", Regular.easeOut,
-200, 0, 1, true);
//Schraubt das Alpha wieder auf 1 hoch
var tweenAlpha:Tween = new Tween(nextPage, "alpha", Regular.easeOut,
0, 1, 1, true);
//Und die Tweens wieder rein ins Array
tweens.push(tweenX);
tweens.push(tweenAlpha);
//Bringt die nächste Seite auf die Bühne, die 6 definiert unsere Seiten hinter unsere Menüleiste
addChildAt(nextPage,6);
//Die nächste Seite ist nun unsere derzeitige Seite
currentPage = nextPage;
}
//Diese Funktion wird aufgerufen wenn die derzeitige Seite fertig von Bühne getweened wurde
function currentPageGone(event:Event):void {
//entfernt die derzeitige Seite komplett
removeChild(currentPage);
//Zeigt uns die nächste Seite
showNextPage();
}
//so laden wir den Mp3player auf unsere Hauptseite
var request:URLRequest = new URLRequest("player.swf");
var loader2:Loader = new Loader()
loader2.load(request);
//die 8 definiert den neuen Child hinter unseren Buttons
addChildAt(loader2,8);
//Eigenes Contextmenü
var menuItem1:ContextMenuItem = new ContextMenuItem("Created by dZign");
var customContextMenu:ContextMenu = new ContextMenu();
customContextMenu.hideBuiltInItems();
customContextMenu.customItems.push(menuItem1);
this.contextMenu = customContextMenu;
function context2Down(event:ContextMenuEvent):void {
this.gotoAndPlay(1);
}
//Glow effeckt im Logo_mc
Am liebsten wäre es mir wenn man den Preloader extern ansteuern kann ist aber kein muss.
Vielen dank wieder mal
Ich habe die mal ein Beispiel gebastelt, damit solltest du in der Lage sein es in deinem Projekt einzubinden.
Das Script:
PHP-Code:import flash.events.Event;
import flash.events.ProgressEvent;
import flash.net.URLRequest;
import flash.display.*;
var con_mc:MovieClip;
var rect:Shape = new Shape();
rect.graphics.beginFill(0xFFFFFF);
rect.graphics.drawRect(0, 0, 100, 100);
addChild(rect);
var ldr:Loader = new Loader();
configureListeners(ldr.contentLoaderInfo);
ldr.mask = rect;
var url:String = "IMG_0617.jpg";
var urlReq:URLRequest = new URLRequest(url);
ldr.load(urlReq);
//trace(Stage.width + " vorher")
function configureListeners(dispatcher:IEventDispatcher) {
dispatcher.addEventListener(ProgressEvent.PROGRESS, onLoadProgress);
dispatcher.addEventListener(Event.COMPLETE, onLoadComplete);
dispatcher.addEventListener(IOErrorEvent.IO_ERROR, onIOError);
con_mc = new preloader_mc();
addChild(con_mc);
con_mc.x = stage.stageWidth /2;
con_mc.y = stage.stageHeight /2;
con_mc.gotoAndStop("preload");
}
function onLoadProgress(event:ProgressEvent):void {
var loadedPct:uint = Math.round(100 * (event.bytesLoaded / event.bytesTotal));
con_mc.status_mc.status_txt.text = loadedPct;
}
function onLoadComplete(event:Event):void {
con_mc.gotoAndPlay("preloadReady");
addEventListener(Event.ENTER_FRAME, ueberwachePreloader);
}
function ueberwachePreloader(event:Event) {
if (con_mc.currentLabel == "start") {
removeEventListener(Event.ENTER_FRAME,ueberwachePreloader)
removeChild(con_mc);
addChild(ldr);
}
}
function onIOError(event:IOErrorEvent) {
trace("Fehler beim laden: " + event.text);
}
Gruß
Wanderratte
Gebildet ist,
wer weiß,
wo er findet,
was er nicht weiß.
4bugs
Home
Amazon Wunschzettel
Wow vielen Dank schonmal für deine arbeit Wanderratte.
Werd es mir gleich mal anschauen
![]()
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)