Funktionen verbinden "RollOver & Press"

LuvShining

Erfahrenes Mitglied
Hallo,

ich versuche gerade einige Buttons mit einer "Doppelfunktion" zu belegen. Und zwar hätte ich gern, dass der Button "A" zum einen beim darüberfahren in einer Leiste die Untermenüpunkte anzeigt, beim Klick darauf allerdings in eine neue Szene wechselt.

on (rollOver) {
gotoAndPlay("SzeneA", "StartA");
}
on (press) {
gotoAndPlay("SzeneZugehörigZuA", "StartZugehörigeSzeneA");
}

Kann mir jemand erklären, wie ich diese beiden Funktionen verbinden kann? So wie ich es geschrieben habe, funktioniert es nämlich leider nicht

Über Hilfestellung würde ich mich freuen.

Viele Grüße
Nadine
 
Hi,

müssen es unbedingt Szenen sein? Die verkomplizieren in der Regel alles.

z.B.: Handelt es sich bei Deinem Button über eine Schaltfläche oder einen MovieClip? Im letzteren Fall, kannst Du diese Syntax von gotoAndPlay nicht verwenden, sondern musst Die Funktion auf _root wrappen. :(

Generell: Wenn Du mit einem Button in eine andere Szene springst, ist dieser Button in der neuen Szene bestenfalls in einem neuen Schlüsselbild vorhanden und benötigt dort ebenfalls diese Ereignishandler.

Naja, aus der Ferne ist das schwer zu durchschauen und auch schwer zu erklären, vielleicht kannst Du ja Deine Datei mal posten und noch einmal genau angeben, was mit dem Film bei rollOver und onPress auf den Button passieren soll.

Gruß
.
 
Hallo,

danke zunächst für die schnelle Reaktion!

Insgesamt handelt es sich um eine Navigationsbar, 8 Menüpunkte mit jeweils bis zu 10 Untermenüpunkten.
Vorgegeben ist mir, dass beim drüberfahren über die Schaltfläche mit der Mouse sich immer sofort die zugehörigen Untermenüpunkte zeigen. Wenn man allerdings den Hauptmenüpunkt anwählt, soll in eine neue Szene gewechselt werden.
Bsp.: Geht man über den Menüpunkt NEWS werden einem WELT, LOKALNACHRICHTEN und VERKEHRSHINWEISE angezeigt. Wählt man einen der Untermenüpunkte aus, oder geht direkt über den Hauptmenüpunkt NEWS wechselt der Film in eine neue Szene "News", wo ein zum Thema passender "Movie" läuft.
Ich könnte alles in eine Szene packen und über entsprechende "Lables" handeln, auch könnte ich alles nur über die Untermenüpunkte steuern, dass möchte ich aber nicht. Die zugehörige Szene soll immer über Haupt und Untermenü-Schaltfläche angesteuert werden.


Viele Grüße
Nadine
 
Ok, soweit klar. ;)

Was ich nicht verstehe ist, warum beim rollOver ebenfalls eine neue Szene angesteuert werden muss - Untermenüs kannst Du doch einfach über _visible, ein Alphafading oder über eigene Zeitleisten des Menü-MCs ein- und ausblenden...

Generell kannst Du von tieferen Schachtelungstiefen aus keine Szenen ansteuern; dazu muss auf _root eine Funktion erstellt werden, da gotoAndPlay("Szenenname", "Bildnummer") nur von der Hauptzeitleiste aus funktioniert:
PHP:
function gotoSzene(sname, pnum) {
    switch(sname) {
        case "Szenenname1": gotoAndPlay("Szenenname 1", pnum); break;
        case "Szenenname2": gotoAndPlay("Szenenname 2", pnum); break;
        case "Szenenname3": gotoAndPlay("Szenenname 3", pnum); break;
        // usw, für alle Deine Szenen
    }
}
Die Szenennamen müssen hartcodiert und mit switch abgefragt werden, da gotoAndPlay keine Variablen als Parameter für die Szene akzeptiert (das ist ein Beispiel für die "Unhandlichkeit" von Szenen mit dynamischer Navigation).

Was allerdings genau Dein Problem ist, kann ich wie gesagt erst sagen, wenn ich Deine Datei gesehen habe.

Generell würde ich Dir eher dazu raten, Deine Inhalte in externen SWF-Dateien unterzubringen und weder mit Szenen noch mit Zeitleisten zu arbeiten (besser zu warten, eleganter und übersichtlicher). Siehe dazu z.B. dieses Tutorial.

Was die Submenüs anbelangt: Das würde ich (auch wenn Du ansonsten nicht auf Deine Szenenstruktur verzichten kannst) auf keinen Fall mit Szenen lösen. Hier im Forum gibt es einige Beispiele zum Thema Submenüs (die Suche hilft weiter). Ansonsten kann ich Dir aber auch einige meiner Beispiele zu diesem Thema heraussuchen.

Gruß
.
 
Zurück