Flashhilfe.de - Flash Community

Aktiver Button farbig belassen… [Flash 9]

 


AntwortenRegistrieren Seite1  

dastradamus#1
Benutzerbild von dastradamus
Beiträge: 10
Registriert: Sep 2011

13.10.2011, 16:04

Hallo allerseits!

ich möchte gerne, wenn ich den Button drücke der in einer anderen Farbe eingefärbt ist als alle anderen. Sobald ich auf den nächsten Button drücke soll der erste in den normalzustand und der aktive somit in einer anderen Farbe eingefärbt sein.


Zum Verständnis das .fla unter folgendem Link zum download:

http://www.speedshare.org/download.php?id=63130ABE11



Besten Dank für alle Antworten!

dastradamus
Schlagwörter: button aktiv
Kerstin77#2
Benutzerbild von Kerstin77
Beiträge: 1004
Registriert: Jul 2008

13.10.2011, 22:27

Hi,

dazu hatte ich mal ein Tutorial erstellt, vielleicht hilft es ja:

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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
// Array mit den Button-Titeln, kann beliebig erweitert werden
var menu:Array=["Home","Produkte","Referenzen","Kontakt","Impressum"];

// Variable in der gespeichert wird, welcher der aktive Button ist
var aktiv:String="";

// Zuweiseung der Variable menu_btn zum DynamicButton
var menu_btn:DynamicButton;

// Menü erstellen
for (var i:uint = 0; i<menu.length; i++) {
     // Neuer Button
   menu_btn = new DynamicButton();
     // Namen für diesen Button vergeben
   menu_btn.name = String(menu[i]) + "_btn";
     // Label setzen (aus dem Menü-Array)
   menu_btn.label_txt.text = String(menu[i]);
     // xPosition des Button setzen (hier: immer auf 15)
   menu_btn.x = 15;
     // yPosition des Buttons setzen (unter den vorher hinzugefügten Button)
   menu_btn.y = 15 + (35 * i);
     // Mauszeiger als Handcursor anzeigen
   menu_btn.buttonMode = true;
     menu_btn.useHandCursor = true;
     menu_btn.mouseChildren = false;
     // EventListener registrieren
   menu_btn.addEventListener(MouseEvent.MOUSE_OVER, buttonFunktion);
     menu_btn.addEventListener(MouseEvent.MOUSE_OUT, buttonFunktion);
     menu_btn.addEventListener(MouseEvent.MOUSE_DOWN, buttonFunktion);
     menu_btn.addEventListener(MouseEvent.MOUSE_UP, buttonFunktion);
     // Button hinzufügen
   addChild(menu_btn);
}

// Die Funktion, die von den EventListener aufgerufen wird
function buttonFunktion(evt:MouseEvent):void {
     // welche Aktion?
   switch (evt.type) {
        case "mouseOver" :
           // Maus befindet sich über dem Button
         // falls dieser nicht der aktive Button ist, soll der Zustand "over" angezeigt werden
         if (aktiv != evt.target.name) evt.target.gotoAndStop("over");
           break;
 
        case "mouseOut" :
           // Maus verlässt den Button
         // falls dieser nicht der aktive Button ist, soll der Zustand "normal" angezeigt werden
         if (aktiv != evt.target.name) evt.target.gotoAndStop("normal");
           break;
 
        case "mouseDown" :
           // Maus klickt auf den Button
         // falls dieser nicht der aktive Button ist, soll der Zustand "down" angezeigt werden
         if (aktiv != evt.target.name) evt.target.gotoAndStop("down");
           break;
 
        case "mouseUp" :
           // Maustaste wird über dem Button losgelassen
         // Variable erstellen, in der der Button gespeichert wird
         var child:MovieClip;
           // wurde vorher bereits ein Button angeklickt?
         if (aktiv != "") {
              // ... dann diesen in den Normalzustand setzen
            child = getChildByName(aktiv) as MovieClip;
              child.gotoAndStop("normal");
           }
           // geklickten Button speichern
         child = getChildByName(evt.target.name) as MovieClip;
           // aktiven Zustand anzeigen
         child.gotoAndStop("aktiv");
           // und den Namen des Buttons in der Variable aktiv merken
         aktiv = String(evt.target.name);
           // Je nach geklicktem Button eine andere Aktion ausführen lassen
         switch (aktiv) {
              case "Home_btn":
                 trace("Home geklickt");
                 break;
              case "Produkte_btn":
                 trace("Produkte geklickt");
                 break;
              case "Referenzen_btn":
                 trace("Referenzen geklickt");
                 break;
              case "Kontakt_btn":
                 trace("Kontakt geklickt");
                 break;
              case "Impressum_btn":
                 trace("Impressum geklickt");
                 break;
           }
           break;
     }
}


Beispieldatei im Anhang.

Grüße,
Kerstin
Wer Rechtschreibfehler findet, darf sie gerne behalten.

Angehängte Dateien:
Adobe Flash Quelldatei active_button.fla77.50 KB

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   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2022 Sebastian Wichmann - Flashhilfe.de