Zurück   Flashforum > Flash > Flash Fortgeschritten > Flash CS3 Professional

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 02-02-2010, 10:44   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2008
Beiträge: 38
Question MC fade Funktion, mehrere Auflistung?

Hi Leute,

Ein bisschen doofer Titel ich weiss, aber ich werde versuchen mich in wenigen Worten zu erklären

Es geht um folgendes:

Ich habe einen relativ soliden MC fade AS gefunden. Dieser baut sich folgendermassen auf:

ActionScript:
  1. //Fade In
  2.  
  3. MovieClip.prototype.fadeIn = function (pTempo:Number):Void
  4. {
  5.     this._visible = true;
  6.     this.onEnterFrame = function ()
  7.     {
  8.         this._alpha += pTempo;
  9.         if (this._alpha >= 100)
  10.         {
  11.             delete this.onEnterFrame;
  12.         }
  13.     };
  14. };
  15. ASSetPropFlags (MovieClip.prototype, "fadeIn", 1);
  16.  
  17.  
  18.  
  19. //Fade Out
  20.  
  21. MovieClip.prototype.fadeOut = function (pTempo:Number):Void
  22. {
  23.     this.onEnterFrame = function ()
  24.     {
  25.         this._alpha -= pTempo;
  26.         if (this._alpha <= 0)
  27.         {
  28.             delete this.onEnterFrame;
  29.             this._visible = false;
  30.         }
  31.     };
  32. };
  33. ASSetPropFlags (MovieClip.prototype, "fadeOut", 1);

Dieser Teil des Codes definiert dass der MC "prototype" aus- und eingefadet werden kann durch folgenden Befehl:

ActionScript:
  1. on(release) {
  2.     prototype.fadeIn (3);
  3. }

-oder-

ActionScript:
  1. on(release) {
  2.     prototype.fadeOut (3);
  3. }

welchen ich ganz einfach auf einen Button lege.


Zum Problem:

Ich habe nun allerdings 6 Navigationspunkte, sprich ich bräuchte eine Auflistung aller vorkommenden MC's. Aus dem CSS zB kenne ich die Möglichkeit mehrere Objekte mit einem Komma zu gruppieren, also zB so div1, div2, div3 {blabla}. Wie würde ich das im AS schreiben ohne den kompletten Code für jeden einzelnen MC kopieren zu müssen?

Hoffe das war nicht allzu kompliziert

Liebe Grüsse

Philippe

Geändert von zheddo (02-02-2010 um 10:51 Uhr)
zheddo ist offline   Mit Zitat antworten
Alt 02-02-2010, 11:43   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Zitat:
Ich habe einen relativ soliden MC fade AS gefunden
Da gibt es hier im Forum aber bessere Scripte. Mit einem einfachen Tween-Script funzt das übersichtlicher und du musst nicht mit undokumentierten Befehlen wie ASSetPropFlags arbeiten:
PHP-Code:
//AS2, auf der Hauptzeitleiste
import mx.transitions.*;

function 
blenden(mc,startwert,endwert){   
   
//mc in 0,6 Sekunden ein- oder ausfaden
   
var tw = new Tween(mc"_alpha"mx.transitions.easing.None.easeNonestartwertendwert0.6true);
}

//einblenden:
blenden(meinMC,0,100);

//ausblenden:
blenden(meinMC,100,0); 
Die blenden-Funktion kann dann auch problemlos mit Klick-Events verbunden werden.
  Mit Zitat antworten
Alt 02-02-2010, 12:42   #3 (permalink)
Neuer User
 
Registriert seit: Apr 2009
Beiträge: 65
Abgesehen davon, wie das Faden gelöst wird, Dein Grundproblem klingt so, als könnte man das sehr schön mit Klassen/Objektorientierung lösen. Ich weiß nicht, ob dieser Ansatz zu weit geht, aber Du könntest eine Actionscript-Datei FadeClip.as mit folgendem Inhalt anlegen:

class FadeClip extends MovieClip
{
public function FadeClip()
{
onMouseDown = function() { fadeOut(3) };
onMouseUp = function() { fadeIn(3) };
}

function fadeOut( pTempo : Number )
{
this._visible = true;
this.onEnterFrame = function ()
{
this._alpha -= pTempo;
if (this._alpha <= 0)
{
delete this.onEnterFrame;
}
};
}

function fadeIn( pTempo : Number )
{
this.onEnterFrame = function ()
{
this._alpha += pTempo;
if (this._alpha >= 100)
{
delete this.onEnterFrame;
this._visible = false;
}
};
}

}

Jetzt müßtest Du "nur noch" bei jedem MovieClip in der Bibliothek, der diese definierten Funktionen haben soll, unter Symboleigenschaften als Klasse FadeClip eintragen. Wenn Du für deine Navi immer den gleichen Clip verwendest und den z.B. duplizierst, mußt Du auch nur einen Clip in der Bibliothek bearbeiten.

Geändert von kopfrocker (02-02-2010 um 12:45 Uhr)
kopfrocker ist offline   Mit Zitat antworten
Alt 02-02-2010, 13:01   #4 (permalink)
Neuer User
 
Registriert seit: Sep 2008
Beiträge: 38
EDIT: Ich danke euch beiden recht herzlichst!! Habe die Lösung gefunden

Geändert von zheddo (02-02-2010 um 13:11 Uhr)
zheddo ist offline   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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Button Fade als Funktion ThundaHead Flash Einsteiger 6 26-01-2007 19:53
Array Problem bei Button-Ebenen Zuweisung mit Fade Funktion Tielmann ActionScript 1 6 29-10-2006 15:57
Dynamische Lade- und Fade-In Funktion funzt net! Coladose ActionScript 1 1 24-05-2006 10:12
Gibt es eine goto and fade funktion? da_killerk Flash 8 1 18-01-2006 10:51
komplexe mc slide und fade funktion deesigns ActionScript 1 0 15-10-2003 01:13


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

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


Copyright ©1999 – 2012 Marc Thiele