Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 09-10-2004, 17:07   #1 (permalink)
409coffeemaker
Gast
 
Beiträge: n/a
[Tutorial] RollOver/Out mit runden Animationen

Hi…

Tutorial kann man das nicht wirklich nennen… Aber ich hab schon öfters mal die Frage danach gesehen…

Es geht darum.

Du hast einen MC als Schaltfläche mit den entsprechenden Handlern definiert.
Bei onRollOver soll diese Schaltfläche dunkler faden, beim onRollOut soll diese wieder heller werden.

Typisches Problem:

Bewegt man die Maus von der Schaltfläche, während sie gerade ausfadet, wird diese wieder heller, ohne vorher zu warten, bis auch wirklich der dunkelste Wert erreicht wurde.
Das gleiche dann, wenn man danach direkt wieder auf die Schaltfläche rollt…*bevor der hellste Wert erreicht ist, wird diese wieder dunkler.

Nun… das kann bei Farbanimationen durchaus gewünscht sein… aber stellt euch vor, das ist ein Bewegungstween… dieser würde unsanft unterbrochen…

Daher kann man folgendes machen:

PHP-Code:
//Actionscript 1.0
_root.mc1.onRollOver=function()
    {
    
this.onEnterFrame=function()
        {
        if(
this._currentframe==1)
            {
            
this.play();            
            }
        if(
this._currentframe==15)
            {
            
this.stop();
            
delete this.onEnterFrame;
            }
        };
    }
    
_root.mc1.onRollOut=function()
    {
    
this.onEnterFrame=function()
        {
        if(
this._currentframe==15)
            {
            
this.play();            
            }
        if(
this._currentframe==1)
            {
            
this.stop();
            
delete this.onEnterFrame;
            }
        };
    } 
Ich hoffe, das hilft dem ein oder anderen weiter… ist nichts besonderes… aber gerade als Anfänger tut man sich mit soetwas sehr schwer.

Liebe Grü$$e

Yves
Angehängte Dateien
Dateityp: zip state.zip (3,3 KB, 24x aufgerufen)
  Mit Zitat antworten
Alt 09-10-2004, 18:03   #2 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Hehe Hi 409coffeemaker!
Nette sache, des "stop()" im script kannst eigentlich kicken, die sind ja in der Animation gesetzt

Des Dinges für mehrere Buttons wäre ziehmlich viel code, da hab ich mir gedacht des machen wir kürzer

ActionScript:
  1. var anzahl_buttons = 4;
  2. MovieClip.prototype.fade = function(f, l) {
  3.     this.onEnterFrame = function() {
  4.         if (this._currentframe == f) {
  5.             this.play();
  6.         }
  7.         if (this._currentframe == l) {
  8.             delete this.onEnterFrame;
  9.         }
  10.     };
  11. };
  12. for (var i = 1; i<=anzahl_buttons; i++) {
  13.     _root["mc"+i].onRollOver = function() {
  14.         this.fade(1, 15);
  15.     };
  16.     _root["mc"+i].onRollOut = function() {
  17.         this.fade(15, 1);
  18.     };
  19. }
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 09-10-2004, 19:00   #3 (permalink)
409coffeemaker
Gast
 
Beiträge: n/a
Genial!


Yves
  Mit Zitat antworten
Alt 09-10-2004, 19:42   #4 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
Hmm, ... sag mal ehrlich Rusty, versuchst Du bis zum Ende 2005 auf 100.000 Threads und Antworten zu kommen?

Ansonsten, wie immer ein feiner Prototyp.

P.S.: @409coffeemaker: Ich denke der eine oder andere wird sich sicherlich darüber freuen.
__________________
Dann geht ein Bild hinein, geht durch der Glieder angespannter Stille - und hört im Herzen auf zu sein.

Geändert von questionner (09-10-2004 um 19:44 Uhr)
questionner ist offline   Mit Zitat antworten
Alt 10-10-2004, 00:55   #5 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
@ 409coffeemaker

@ questionner
Na ja! Statistisch gesehn, brächte ich für 100 k, Math.ceil(273 monate)!!
Unwahrscheinlich das ich des bis 2005 schaffe
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 10-10-2004, 09:45   #6 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
Na dann musst Du halt ein wenig nachhelfen. Kannst ja jeden Thread duplizieren. Nimmst Du einen Prototype, der mit der max. Anzahl von 5 jeden neuen Thread von Dir sofort dupliziert als Thread-Antworten + irgendeine zusätzliche Ergänzung die per random aus 88821 noch möglichen Ergänzungen hinzufügt, die in einem Array oder so agbelegt sind und nach Verwendung dort gelöscht werden. Musst Du nur überlegen, auf was Du alles womit antworten wollen würdest. Oder hängst die Zusätze aus einem Array nach Abgleich bestimmter verwendeter Wörter an.
Aber kann man auch Threads preloaden?


Mach ruhig weiter so mit Deinem rasanten Tempo. Ist eine klasse Bereicherung für das Forum. Aber Du bist nicht jemand, der an beschleunigtem Lebensablauf leidet und eigentlich erst 6 ist und nur aussieht wie (hm.. schätze mal vorsichtig ca. ohen Gewähr) 25?
__________________
Dann geht ein Bild hinein, geht durch der Glieder angespannter Stille - und hört im Herzen auf zu sein.
questionner ist offline   Mit Zitat antworten
Alt 11-10-2004, 01:40   #7 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Lol! Danke fürs Kompliment, 25 wäre ich gerne wieder war ne lustige zeit

Ich bin bald 44
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 11-10-2004, 07:51   #8 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
Gern geschehen. Hast Dich halt rasend jung gehalten.

Falls Du gerade mal etwas Zeit hast, weißt Du ob dies nur in der Hauptzeitleiste funzt? Das tut es nämlich. In MCs will es so nicht. Weiß ja nicht, ob Du es schon gesehen hattest.

einfaden auf EnterFrame möglich?
__________________
Dann geht ein Bild hinein, geht durch der Glieder angespannter Stille - und hört im Herzen auf zu sein.
questionner ist offline   Mit Zitat antworten
Alt 11-10-2004, 11:14   #9 (permalink)
409coffeemaker
Gast
 
Beiträge: n/a
Alter Schwede… und ich dachte schon, die meisten Spezialisten hier aus dem Forum sind so in Toms Alter… um die 30 … aber bei Rusty macht sich ja langsam dann schon der süßliche Geruch des Alters breit…

Hehe… gibts eigentlich irgendwo Photos von den Postern hier ausm Flashforum? Ich fänd ne Gallerie ja mal ganz cool…

Yves
  Mit Zitat antworten
Alt 11-10-2004, 11:37   #10 (permalink)
will code HTML for food
 
Benutzerbild von querkopf
 
Registriert seit: Mar 2003
Beiträge: 1.232
cooles Teil

Habe mit der Prototype von Rusty mal ein wenig rumgespielt und jetzt eine Version gebastelt, bei der die Animation nicht komplett zuende spielt, sondern von dem Punkt an dem sie angelangt ist einfach wieder rückwärts läuft:

ActionScript:
  1. var anzahl_buttons = 1;
  2. MovieClip.prototype.fade = function() {
  3.     this.s = !this.s;
  4.     this.onEnterFrame = function() {
  5.         if (this.s == true) {
  6.             this.nextFrame();
  7.         } else if (this.s == false) {
  8.             this.prevFrame();
  9.         }
  10.         if (this._currentframe == 1 || this._currentframe == 15) {
  11.             delete this.onEnterFrame;
  12.         }
  13.     };
  14. };
  15. for (var i = 1; i<=anzahl_buttons; i++) {
  16.     _root["mc"+i].s = false;
  17.     _root["mc"+i].onRollOver = function() {
  18.         this.fade();
  19.     };
  20.     _root["mc"+i].onRollOut = function() {
  21.         this.fade();
  22.     };
  23. }
__________________
Alles ist wie immer. Nur schlimmer.
querkopf ist offline   Mit Zitat antworten
Alt 11-10-2004, 12:36   #11 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
@querkopf: auch nicht uninteressant. Kann man für verrückte Sachen nutzen.

@409coffeemaker: von wegen, das ist hier noch der Oldie-Treff. Selbst tendiere zur 40. Habe also noch etwas Zeit bis zur AS-Rente. Warrant und madokan schätze ich auch mal auf Mitte vierzig. Fotos wird es wohl kaum geben. Rusty hat seines gerade eben wieder zurückgenommen und ist wieder in der "alten Rolle" unterwegs.
Man könnte ja jetzt vermuten: je fortgeschrittener das AS-Knowhow, desto mehr Lebensalter.... Das wird jetzt vielleicht von einigen jungen wilden Heißsporen widerlegt!
__________________
Dann geht ein Bild hinein, geht durch der Glieder angespannter Stille - und hört im Herzen auf zu sein.
questionner ist offline   Mit Zitat antworten
Alt 11-10-2004, 12:40   #12 (permalink)
409coffeemaker
Gast
 
Beiträge: n/a
Und ich hab immer schon Torschußpanik… mit meinen gerade 22 Jahren… da hab ich ja nochmal Glück gehabt…


Jens und Mathias schätze ich so auf ca. Mitte 30…

Aber was die Photos angeht… ich mal mal in „Gespräche“ einen Thread auf, indem man lustig ein Photo posten kann*…*

http://www.flashforum.de/forum/showthread.php?p=1053509



Yves

Geändert von 409coffeemaker (11-10-2004 um 12:47 Uhr)
  Mit Zitat antworten
Alt 11-10-2004, 12:49   #13 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
Das habe ich mir beinahe gedacht.

Mal sehen, ob sich einer an dem Foto-Thread beteiligt. Glaube eher nicht. Wo soll man auch all die Bilder ablegen.
__________________
Dann geht ein Bild hinein, geht durch der Glieder angespannter Stille - und hört im Herzen auf zu sein.
questionner ist offline   Mit Zitat antworten
Alt 11-10-2004, 17:23   #14 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
@ querkopf

Colles Teil, des kann man aber kürzer schreiben

ActionScript:
  1. var anzahl_buttons = 4;
  2. MovieClip.prototype.fade = function(slide) {
  3.     this.onEnterFrame = function() {
  4.         this[slide]();
  5.         if ((this._currentframe == 1) || (this._currentframe == this._totalframes)) {
  6.             delete this.onEnterFrame;
  7.         }
  8.     };
  9. };
  10. for (var i = 1; i<=anzahl_buttons; i++) {
  11.     _root["mc"+i].onRollOver = function() {
  12.         this.fade("nextFrame");
  13.     };
  14.     _root["mc"+i].onRollOut = function() {
  15.         this.fade("prevFrame");
  16.     };
  17. }
Der Sinn eines Protos ist ja das Du keine festen werte reinschreibst, (hier der frame "1" geht schon) wie zb. frame "15"
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 11-10-2004, 17:36   #15 (permalink)
409coffeemaker
Gast
 
Beiträge: n/a
Zitat:
Zitat von RustyCake
Der Sinn eines Protos ist ja das Du keine festen werte reinschreibst, (hier der frame "1" geht schon) wie zb. frame "15"

ActionScript:
  1. var anzahl_buttons = 4;
  2. MovieClip.prototype.fade = function(slide) {
  3.     this.onEnterFrame = function() {
  4.         this[slide]();
  5.         if ((this._currentframe == this._totalframes-(this._totalframes+1)) || (this._currentframe == this._totalframes)) {
  6.             delete this.onEnterFrame;
  7.         }
  8.     };
  9. };
  10. for (var i = 1; i<=anzahl_buttons; i++) {
  11.     _root["mc"+i].onRollOver = function() {
  12.         this.fade("nextFrame");
  13.     };
  14.     _root["mc"+i].onRollOut = function() {
  15.         this.fade("prevFrame");
  16.     };
  17. }
Klug*******er ich bin! *hüpf* *hüpf*

Bitte nicht schlagen
  Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 07:32 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele