Button State in einem geladenen MC ansprechen ? [Flash 11]
| 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");
}
|
| | | 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 EventsBitte keine pn´s wegen irgendwelchen fragen zu Threads, dafür gibt es sie ja schließich | | | 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" | | | 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 | | | 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.. | | | 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:
| | | 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 | |
| | 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 :( | |
| Ähnliche Beiträge zum Thema | 29.09.2019 - Dunraven 15.04.2021 - hansi24 10.10.2020 - Rrxxqg 23.11.2020 - user01234 |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News 
Regeln & Bedingungen
|