Problem mit Navigation

Kaeschdin

Erfahrenes Mitglied
Hallo zusammen,

sorry für den doch sehr allgemeinen Betreff, aber meine Frage ist zu komplex für eine knackige Überschrift.

Ich habe folgende Navigation nachgebaut:

http://www.flashkit.com/movies/Interfaces/Menus/Animated-Martin_S-8016/index.php?chk=no

Beim Klick auf die Navi-Unterpunkt im rechten Bereich soll in der Mitte der Bühne ein weißes Feld mit scrollbarem Text erscheinen.

Dazu hab ich zwei Fragen:

1. Lade ich dieses weiße Textfeld am einfachsten aus einer anderen Flash-Datei?

2. Welche Aktionen bringen den Film dazu, beim Klick auf die Unterpunkte das Textfeld zu laden UND Dabei die Navigationen rechts und links stehenzulassen?

Ich hoffe, ihr könnt mir helfen. Danke schonmal.

Kerstin
 
Hallo Kerstin!

zu 1) Warum willst Du dieses Textfeld aus einer separaten Flash-Datei laden? Möchtest Du für jede Seite bzw. jeden Untermenüpunkt eine eigene Flash-Datei erzeugen? Wenn ja, dann ist diese Lösung durchaus plausibel.

zu 2) Im Prinzip kannst Du einen leeren MovieClip auf Deine Bühne neben der Navigation erstellen. Die Navigation kannst Du dann z.B. mit einem "on(press)" versehen. In diesem Eventhandler schreibst Du dann ein paar Zeilen ActionScript zum Laden der jeweiligen Flash-Dateien.

Bsp: Nehmen wir an, Deine Bühne (_root) hat hier einen Navigationsbutton (_root.button1). Neben dem Button gibt es einen leeren MovieClip für die zu ladenen Dateien. (_root.empty1) Den Button versiehst Du dann mit folgendem Code:

Code:
on(press)
{
    _root.empty1.loadMovie("flashFuerButton1.swf", _root.empty1 );
}

Hierbei ist natürlich auf die Vergabe der Instanznamen zu achten. Das wäre ert einmal eine recht einfache Variante, sollte aber durchaus den Zweck erfüllen.
 
Erstmal danke für deine Antwort.

zu 1) weil ich keine bessere Idee habe:(

zu 2) Hmm, also ich hab heute Mittag folgendes versucht (erstmal ohne Scrollmöglichkeit):

Ich habe in Photoshop ein 300x200-Image (text_kurzbeschreibung.gif) mit dem Text erstellt, der nach dem Klick auf den Navi-Button mittig erscheinen soll.

Dann habe ich auf Unternavigations-Movieclip auf den Buttonbereich (also nicht auf die Schaltfläche selbst, weil die schon anderweitig belegt ist) folgenden Code geschrieben:

on(release) {
Mitte_Uebermich.loadMovie("text_kurzbeschreibung.gif"); //wir laden das Bild in den Platzhalter mc4
}

Über mich ist der Instanzname eines leeren Movieclips, den ich mittig positioniert habe. Aber es passiert nichts :( Ich fürchte, ich hab den leeren Movieclip im falschen Bereich (Unternavi-Movieclip) positioniert.
 
Insofern alle Deine Bezeichner stimmen, dürfte es gehen... aber nicht mit einem GIF. Entweder Du nutzt JPG´s oder bindest das GIF in ein eigenständiges SWF ein. Die SWF-Variante ist für ältere Flash-Player vorziehen.
 
Jippie, es klappt *freu* Danke, danke, danke. Es lag tatsächlich daran, dass ich ein gif statt eines jpg verwendet hat. Man lernt nie aus.

Nachdem das System klar ist, werd ich mich jetzt mal an einem scrollenden Feld statt eines jpg versuchen.

Danke nochmal :)
 
Eine Problem hab ich noch: Ich muss noch ein einen Code einfügen, dass der Scrolltext wieder verschwindet, wenn ich mich vom Button wegbewege bzw. einen anderen Button anklicke. Bisher bleibt er stehen :(

Ich wollte das mit

on (rollOut) {
Mitte_Uebermich.unloadMovie("text_kurzbeschreibung.swf");
}

machen, aber dann kommt ein Fehlerfenster mit "Error Opening URL" und dem lokalen Pfad, in dem die swf-Datei liegt.

Woran kann das liegen?
 
Die unloadMovie-Methode verlangt keine Pfadangabe. Als Ziel wird der Bezeichner des Clips angegeben:

unloadMovie(mein_clip), wobei mein_clip der Bezeichner des Clips auf der Bühne ist.

Da der Clip allerdings wahrscheinlich mehrere Male angezeigt wird, würde ich ihn nicht immer laden und entladen, sondern lediglich unsichtbar schalten:

mein_clip.alpha=0; oder

mein_clip.visible=false;
mein_clip.enabled=false;
 
Original geschrieben von Datic
Die unloadMovie-Methode verlangt keine Pfadangabe. Als Ziel wird der Bezeichner des Clips angegeben:

unloadMovie(mein_clip), wobei mein_clip der Bezeichner des Clips auf der Bühne ist.

Bei

on (rollOut) {
unloadMovie(Mitte_Uebermich);
}

gibt es wieder die Fehlermeldung "Error opening URL" :(

Original geschrieben von Datic

Da der Clip allerdings wahrscheinlich mehrere Male angezeigt wird, würde ich ihn nicht immer laden und entladen, sondern lediglich unsichtbar schalten:

Da passiert leider gar nichts :(

mein_clip.alpha=0; oder

mein_clip.visible=false;
mein_clip.enabled=false;
 
Sorry, hatte übersehen, dass ein Unterstrich vor das visible kommt:
._visible; (Aber NICHT bei .enabled);

UnloadMovie funktioniert bei mir auch (gehe in dem Beispiel in den Code des Clips, kommentiere die Zeile mit ._visible aus und aktiviere die Zeile mit unloadMovie -> klappt auch)

P.S.: vor das Alpha kommt auch ein Unterstrich: _alpha

P.P.S.: Zum Thema unloadMovie: Die Anwendung des Ereignisses onRollOut legt nahe, dass es sich um eine Funktion des entsprechenden Clips handelt.... wenn dem so ist, musst Du den Clip folgendermaßen addressieren:
unloadMovie(_parent.Mitte_Uebermich);
oder (einfacher) mit
unloadMovie(this);
 

Anhänge

  • unloadmovie.zip
    2,2 KB · Aufrufe: 14
Zuletzt bearbeitet:

Neue Beiträge

Zurück