Flashhilfe.de - Flash Community

Button State in einem geladenen MC ansprechen ? [Flash 11]

 


AntwortenRegistrieren Seite1  

hinotenshi#1
Benutzerbild von hinotenshi
Beiträge: 11
Registriert: Aug 2009

14.04.2011, 16:36

Hallo Flashhilfe Gemeinde,

seit Tagen versuche ich nun verzweifelt die Lösung für mein Problem zu finden, nach dem ich mich 2 mal bereits durch den Dschungel an Google Lösungen und Forums Suchen gekämpft habe stehe ich mit meinem Latein am Ende...

Ich habe einen Movie Clip der eine Navigation in sich lädt , diese Navigation funktioniert auch soweit dahingehen das die Buttons klickbar sind und dorthin führen wo sie sollen.

Nun hätte ich aber gerne das wenn ein Button gedrückt wird dieser sich als "Aktiv" kennzeichnet und sobald ein andere Button gedrückt wird sich der Button als deaktivert kennzeichnet im Prinzip soll er einfach auf das Bild was ich unter Aktiv hinterlegt habe benutzen.

Folgendes Script habe ich versucht im Main MC zu verwenden sowie auf dem Navigations MC führte aber nur zu dem Compiler fehler der mir sagte :

Symbol 'Navigation_mc', Ebene 'Actions', Bild 35, Zeile 5   1061: Aufruf für eine möglicherweise nicht definierte Methode addEventListener über einen Verweis mit statischem Typ Class.

Ich habe dann versucht mit import flash.events.*; das problem zu beheben es hat sich aber nichts geändert Fehler ist nach wie vor vorhanden.Auf dem Main MC bekomme ich selbe Fehlermeldung

Somit komme ich zu dem Entschluss, dass dieses Script wohl nicht funktioniert :-/

Vielleicht hat jemand hier eine Idee wie ich es Lösen kann..

Eine Entschlackte .fla habe ich mal angehängt fehlen sämtliche Bilder und die Anderen Bühnen die er Laden würde über die Buttons

OnPulse.fla (19.24 KB)


ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
About_btn.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
About_btn.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
About_btn.addEventListener(MouseEvent.CLICK, onRelease);
About_btn.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);

function onMouseOver(e:MouseEvent){
  e.target.gotoAndPlay("over");
}
function onMouseOut(e:MouseEvent){
  e.target.gotoAndPlay("out");
}
function onRelease(e:MouseEvent){
  e.target.gotoAndPlay("over");
}
function onMouseDown(e:MouseEvent){
  e.target.gotoAndPlay("down");
}

cedddy#2
Benutzerbild von cedddy
Beiträge: 572
Registriert: May 2007

14.04.2011, 16:55

hmm hast du denn deinem button auch den instancenamen About_btn gegeben der fehler sagt gerade aus das About_btn eine klasse ist und nicht ein Movieclip und eine classe an sich kennt halt leider keine Events
Bitte keine pn´s wegen irgendwelchen fragen zu Threads, dafür gibt es sie ja schließich
RustyCake#3
Benutzerbild von RustyCake
Beiträge: 1776
Wohnort: Laimbach 6 1/2
Registriert: Nov 2002

14.04.2011, 16:56

Versteh das ganze noch nicht wirklich, für was brauchst Du vier Events, oder besser gesagt CLICK und MOUSE_DOWN?

Deine Datei ist bisschen schwer zu Handeln.
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muss erst gehen lernen"
joe brockerhoff#4
Benutzerbild von joe brockerhoff
Beiträge: 98
Wohnort: meerbusch
Registriert: Dec 2002

14.04.2011, 16:59

Begriffe die mit einem Großbuchstaben anfangen, sind Klassen vorbehalten - About_btn wird also als Klasse erkannt >>> about_btn - und - statt e.target.goTo... wäre e.currentTarget.goTo... eindeutiger.

Hoffe, das hilft.
world wide wars -> world wide wisdom
www.brockerhoff.com
hinotenshi#5
Benutzerbild von hinotenshi
Beiträge: 11
Registriert: Aug 2009

Themenautor/in

14.04.2011, 17:06

Hallo, danke für eure schnellen Antworten

Die Events Click und Down dachte ich zu benötigen um dem Player zu sagen was passieren soll wenn eben der Button geklickt wurde..

Das mit den Klassen und Großbuchstaben war mir bisher nicht bekannt ich werde das sogleich ändern.
Vielen Dank auch für den Hinweiß mit der Instanz natürlich habe ich genau das vergessen diesen eben einen Namen zu geben und habe sie nur für AS verfügbar gemacht.

Ich werde dies eben ändern und schauen ob sie sich diesmal auf das Script ansprechen..
RustyCake#6
Benutzerbild von RustyCake
Beiträge: 1776
Wohnort: Laimbach 6 1/2
Registriert: Nov 2002

14.04.2011, 17:21

Hier hab schnell eine Demo hin geklatscht, lässt sich auch noch Modifizieren.
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
32
33
34
35
36
37
38
import flash.display.MovieClip;
//
var btnArray:Array = [btn1,btn2,btn3];
var memo:MovieClip;
//
for (var i:uint =0; i<btnArray.length; i++)
{
     btnArray[i].buttonMode = true;
     btnArray[i].addEventListener (MouseEvent.CLICK, clickHandler);
     btnArray[i].addEventListener (MouseEvent.MOUSE_OVER, overHandler);
     btnArray[i].addEventListener (MouseEvent.MOUSE_OUT, outHandler);
}
//
function clickHandler (e:MouseEvent):void
{
     if (memo != null)
     {
        memo.gotoAndStop ("out");
     }
     e.target.gotoAndStop ("click");
     memo = e.currentTarget as MovieClip;
}
//
function overHandler (e:MouseEvent):void
{
     if (memo != e.currentTarget)
     {
        e.target.gotoAndStop ("over");
     }
}
//
function outHandler (e:MouseEvent):void
{
     if (memo != e.currentTarget)
     {
        e.target.gotoAndStop ("out");
     }
}
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muss erst gehen lernen"

Angehängte Dateien:
Adobe Flash Quelldatei btnStateAS3.fla10.07 KB
hinotenshi#7
Benutzerbild von hinotenshi
Beiträge: 11
Registriert: Aug 2009

Themenautor/in

14.04.2011, 17:33

Vielen Dank Rusty Cake für dein Script !

Hat mir sehr geholfen.

gruß

Michel
Geändert von hinotenshi am 14.04.11 um 21:07 Uhr
hinotenshi#8
Benutzerbild von hinotenshi
Beiträge: 11
Registriert: Aug 2009

Themenautor/in

14.04.2011, 21:08

Hallo Rusty Cake,

leider habe ich nun feststellen müssen das nachdem ich dein Script eingebaut und angepasst habe [btn1,etc] mein Vorhaben noch immer nicht funktioniert.

Der Button besitzt seinen over,click effekt aber er bleibt nicht als "click" markiert so wie du es in deinem Demo Script gebaut hast.

Naja für heute hab ich es erstmal aufgegeben hocke seit 12 Uhr an dem Teil und finde einfach den Fehler nicht :(

AntwortenRegistrieren Seite1  

Schnellantwort

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

 
Ähnliche Beiträge zum Thema
Javascript new line [Flash CS5] 23.11.2020 - user01234
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2022 Sebastian Wichmann - Flashhilfe.de