rollout - FlashMX

::emanuel::

Erfahrenes Mitglied
Bei einer Schaltfläche gibt es vier Schlüsselbilder:

Up, darüber, gedrück, aktiv

Könnte man ein Schlüsselbild für rollout hinzufügen?
Wie macht ihr das rollout? Immer nur mit AS?

Liebe Grüße,

Emanuel
 
Hi,

ich nehme für Schaltflächen grundsätzlich MovieClip-Objekte.
Das erleichtert die volle Kontrolle über alle gewünschten Ereignisse.

Vielleicht findest Du hier den einen oder anderen Hinweis, der Dir weiterhilft.

Gruß

EDIT @Basileus:
hmm.. vielleicht hätte ich mir die Beiträge mal anschauen sollen, statt nur zu sagen: Prima, über 30 Treffer, da wird schon was dabei sein... ich habe den Link mal geändert, in der Hoffnung, dass da was dabei ist.. ;-)

@::emanuel::
Generell kann man sich ein MC-Objekt anfertigen, in dem für die gewünschten Zustände Schlüsselbilder oder Tweens zur Verfügung stehen. Die Event-Handler für die Mausereignisse müssen dann per Hand zugefügt werden. Beispiel:
PHP:
stop();
this.onRollOut=function() {
    gotoAndPlay(20); // man kann auch Bildbezeichner nehmen, oder beliebige Funktionen aufrufen
    // gotoAndStop(2); // Wenn Pro Zustand nur ein Schlüsselbild existiert
}
 
Zuletzt bearbeitet:
... und hier nochmal (da ich an einen existierenden Beitrag leider keinen Anhang anfügen kann) ein sehr einfaches Beispiel, das nicht schön aussieht, aber die Grundzüge der Schaltflächenerstellung mit MovieClips veranschaulichen sollte ;)

Gruß
 

Anhänge

erstmal danke für die wirklich tollen antworten!

tja, das mit den rollout - gotoandplay-anweisungen kenn ich schon.... nur stellt sich da folgendes problem:

ich habe alle buttons auf einer ebene. beim ersten button habe ich dann folgende anweisung:

PHP:
on (rollOut) {
	gotoAndPlay(8);
}

beim zweiten Button

PHP:
on (rollOut) {
	gotoAndPlay(16);
}

bei 8 liegt dann ein movie-clip, der 8 frames dauert, bei 16 liegt auch ein movie-clip, der 8 frames dauert.

wenn ich jetzt mit der maus beim ersten button drüberfahr und dann weg, spielt er korrekt ab 8 ab. bei position 15 hab ich die anweisung goto(1), damit er nicht den rollout-mc des zweiten buttons auch abspielt.

beim zeiten button geht er eben zu 16 und spielt es ab und dann wieder zu eins.

das problem ist jetzt folgendes:

wenn ich ganz schnell über die buttons mit der maus geh, dann macht er folgendes:

sobald der mauszeiger den ersten button verlässt geht er zu 8 und will es komplett abspielen, weil sich die maus aber schnell bewegt und schon den zweiten button verlässt, geht er schon zu 16, bevor er überhaupt den rollout-mc vom ersten button komplett abgespielt hat.

bitte helft mir!

danke
 

Anhänge

  • erklaerung.gif
    erklaerung.gif
    2,4 KB · Aufrufe: 97
Zuletzt bearbeitet:
Hi,

wenn ich das richtig verstanden habe, befinden sich alle Buttons bei Dir in einem Objekt?

Das wäre eine nicht sehr ratsame Methode, da es ja sein kann, dass Button A noch mit der RollOut-Animation beschäftigt ist, wärend Button B schon einen RollOver verarbeiten soll...

Wenn alle Buttons das selbe Design haben, genügt es, ein Objekt zu erstellen, welches mehrmals auf der Bühne instanziert wird (geringe Designunterschiede lassen sich über übergebene Variablen auch so realisieren). Ansonsten (wenn sich die Buttons eklatant unterscheiden) müsstest Du halt das Objekt in der Bibliothek kopieren und modifizieren. Ziehe Dir in meiner Beispieldatei doch mal 3-4 der Buttons nebeneinander auf die Bühne -> sie verhalten sich unabhängig von einander.

Tipp: damit die verschiedenen Buttons unterschiedliche Aktionen auslösen, bennene den Eventhandler "this.onRelease = function()" um in z.B. "function activate()". Den Buttons kannst Du dann auf der Bühne verschiedene Verhalten zuweisen:
PHP:
on (Release) {
    this.activate();
    // hier die gewünschte Aktion, z.B. getURL(sonstwas)
}

Gruß
 
Zurück