Flashhilfe.de - Flash Community

Aktiver MC bei MouseOver in den Vordergrund [Flash 10]

 


AntwortenRegistrieren Seite1  

EdithSchmitt#1
Benutzerbild von EdithSchmitt
Beiträge: 11
Registriert: Mar 2011

08.03.2011, 20:25

Hallo an alle Forenmitglieder,

ich bin neu im Forum und Anfänger in ActionScript.
In meiner Animation sind vier aufeinanderlappende Mc, die jeweils bei MouseOver in den Vordergrund kommen sollen, sowie bei MouseOut wieder an ihre ursprüngliche Position zurück sollen.
ActionScript:
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
import flash.display.MovieClip;
import flash.display.DisplayObject;

this.addEventListener( MouseEvent.MOUSE_OVER,ebene1kleo);
function ebene1kleo(e:MouseEvent):void {
           this.setChildIndex(kleo_mc, 1);
           this.setChildIndex(ma_mc, 0);
           this.setChildIndex(aamr_mc, 0);
           this.setChildIndex(schok_mc, 0);
}
this.addEventListener( MouseEvent.MOUSE_OVER,ebene1ma);
function ebene1ma(e:MouseEvent):void {         
           this.setChildIndex(kleo_mc, 0);
           this.setChildIndex(ma_mc, 1);
           this.setChildIndex(aamr_mc, 0);
           this.setChildIndex(schok_mc, 0);
}
this.addEventListener( MouseEvent.MOUSE_OVER,ebene1aamr);
function ebene1aamr(e:MouseEvent):void {         
           this.setChildIndex(kleo_mc, 0);
           this.setChildIndex(ma_mc, 0);
           this.setChildIndex(aamr_mc, 1);
           this.setChildIndex(schok_mc, 0);
}
this.addEventListener( MouseEvent.MOUSE_OVER,ebene1schok);
function ebene1schok(e:MouseEvent):void {         
           this.setChildIndex(kleo_mc, 0);
           this.setChildIndex(ma_mc, 0);
           this.setChildIndex(aamr_mc, 0);
           this.setChildIndex(schok_mc, 1);
}

Für hilfreiche Tipps wäre ich sehr dankbar!
Edith
Werbung
Beiträge: 0
Registriert: Feb 2016


Kerstin77#2
Benutzerbild von Kerstin77
Beiträge: 1004
Registriert: Jul 2008

08.03.2011, 20:50

Hallo,

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var mc_arr:Array = new Array(kleo_mc, ma_mc, aamr_mc, schok_mc);
var id_arr:Array = new Array();
for (var i:uint = 0; i<mc_arr.length; i++) {
     id_arr.push(getChildIndex(MovieClip(mc_arr[i])));
     MovieClip(mc_arr[i]).addEventListener(MouseEvent.MOUSE_OVER, overHandler);
     MovieClip(mc_arr[i]).addEventListener(MouseEvent.MOUSE_OUT, outHandler);
}

function overHandler(evt:MouseEvent):void {
     setChildIndex(MovieClip(evt.target), this.numChildren-1);
}

function outHandler(evt:MouseEvent):void {
     setChildIndex(MovieClip(evt.target), id_arr[mc_arr.indexOf(evt.target)]);
}


Grüße,
Kerstin

Edit: Skript gekürzt
Wer Rechtschreibfehler findet, darf sie gerne behalten.
Geändert von Kerstin77 am 08.03.11 um 21:02 Uhr
EdithSchmitt#3
Benutzerbild von EdithSchmitt
Beiträge: 11
Registriert: Mar 2011

Themenautor/in

08.03.2011, 21:40

Hallo Kerstin,

erst mal vielen Dank, für Deine Mühe und schnelle Antwort.
Leider habe ich immer noch eine Fehlermeldung.

ArgumentError: Error #2025: Das angegebene DisplayObject muss ein untergeordnetes Element des Aufrufers sein.
   at flash.display::DisplayObjectContainer/setChildIndex()
   at marien_apotheke2_fla::MainTimeline/outHandler()

Vielen Dank!
Grüße
Edith
RustyCake#4
Benutzerbild von RustyCake
Beiträge: 1776
Wohnort: Laimbach 6 1/2
Registriert: Nov 2002

09.03.2011, 01:29

Servus
Vermutlich steckt in einem der MovieClips noch ein anderer, auf den das Button-Event zielt.
Tausch die zwei Teile aus.
ActionScript:
1
2
3
4
5
6
7
function overHandler(evt:MouseEvent):void {
       setChildIndex(MovieClip(evt.currentTarget), this.numChildren-1);
}

function outHandler(evt:MouseEvent):void {
       setChildIndex(MovieClip(evt.currentTarget), id_arr[mc_arr.indexOf(evt.currentTarget)]);
}
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muss erst gehen lernen"
Werbung
Beiträge: 0
Registriert: Feb 2016


EdithSchmitt#5
Benutzerbild von EdithSchmitt
Beiträge: 11
Registriert: Mar 2011

Themenautor/in

09.03.2011, 09:32

Hallo RustyCake,

das funktioniert super!!!

Vielen Dank für Eure Mühe.

Grüße
Edith
springer#6
Benutzerbild von springer
Beiträge: 4909
Wohnort: zuhaus
Registriert: Apr 2004

09.03.2011, 20:50

hi,
es gäbe da auch noch

ActionScript:
1swapChildren(...);
lieber chips essen und danach voller zweifel sein, als voller zweifel chips essen...
EdithSchmitt#7
Benutzerbild von EdithSchmitt
Beiträge: 11
Registriert: Mar 2011

Themenautor/in

14.03.2011, 15:33

Hallo springer,

vielen Dank für den Tipp.

Grüße
Edith

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   php-resource.de   phpforum.de   phpwelt.de   Pixelio.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Hier Werben   Impressum
© 1999-2020 Sebastian Wichmann - Flashhilfe.de