[ascoders] Re: OOP Frage

Hi,
ich kann ohne Probleme Klassen erstellen davon Instanzen und widerrum 
verschiedene Eigenschaften vererben,
allerdings habe ich ein Problem damit, die Eigenschaften auf schon 
bestehende MCs auf der Bühne weiterzugeben.
(ohne jetzt mit registerClass Klassen an MCs aus der Bühne zuverknüpfen)

Danke Peter




Manuel.Dahm@xxxxxxxxxxx (Manuel Dahm)
Sent by: ascoders-bounce@xxxxxxxxxxxxx
12.11.2002 21:18
Please respond to ascoders
 
        To:     <ascoders@xxxxxxxxxxxxx>
        cc: 
        Subject:        [ascoders] Re: OOP Frage


Aloha,
 
prototype kannst Du benutzen um bestehende Klassen (Object, Movieclip, 
Array ...) um Methoden ( ~ klasseneigene Funktionen ) zu erweitern, oder 
um eigenen Klassen Methoden zu geben.
Der Nachteil wenn man jeden MC eine ähnliche Funktion gibt, die man 
eventuell auch einfach durch Übergabe von Parametern lösen könnte ist 
erstens die Eleganz und Konsistenz als auch der Speicherbedarf.
 
BSP für Klasse und prototype:
 
function Class(id){ // Klassenkonstruktor
this.id = id
}
Class.prototype.ident = function(){ //Klassenmethode
trace(this.id);
}
test = new Class("aloha"); // Instanz erstellen
test.ident(); // Methode aufrufen
 
Grüße
Manuel
----- Original Message ----- 
From: Peter.Geller@xxxxxxxx 
To: ascoders@xxxxxxxxxxxxx 
Sent: Tuesday, November 12, 2002 9:01 PM
Subject: [ascoders] Re: OOP Frage


Das hieße ich schreibe oder verweise einfach die Funktion in das Objekt, 
um es dann später aufrufen zu können. 
D.h. prototypfunktionen benutze ich nur für Klassen von denen ich 
Instanzen erzeugt habe, oder? 
Hat es eigentlich irgendwelche Nachteile wenn ich die Funktion an den Mc 
anhänge? 
Ich habe nämlich momentan mehrere Mcs denen ich verschiedene 
Eventeigenschaften verpasst habe damit ich z.B. 
Buttonfunktionen alle übersichtlich auf dem ersten Keyframe habe und 
abändern kann. 

Gruß Peter 



Manuel.Dahm@xxxxxxxxxxx (Manuel Dahm) 
Sent by: ascoders-bounce@xxxxxxxxxxxxx 
12.11.2002 20:17 
Please respond to ascoders 
        
        To:        <ascoders@xxxxxxxxxxxxx> 
        cc:         
        Subject:        [ascoders] Re: OOP Frage



Hallo, 
  
das kannst Du schon, aber dazu solltest Du "renndaten" als Klasse 
definieren. 
Ein Movieclip an sich hat keinen Prototype, lediglich die Klasse 
Movieclip.... 
Einen prototype für einen MC zu definieren, macht auch eigentlich keinen 
Sinn, da kannst Du ja auch einfach ne Funktion machen.... 
  
Ich würd das eh eher so schreiben: 
movieclip.prototype.preselect = function(){ 
trace("hallo"); 
} ;
this.renndaten.maerz_03.preselect(); 
 
  
Grüße 
Manuel 

 
 
----- Original Message ----- 
From: Peter.Geller@xxxxxxxx 
To: ascoders@xxxxxxxxxxxxx 
Sent: Tuesday, November 12, 2002 8:05 PM 
Subject: [ascoders] OOP Frage 


Hi, 
warum klappt das so 

loslassen  = function(){trace("hallo"} 
MovieClip.prototype.preselect = loslassen; 
this.renndaten.maerz_03.preselect(); 

und nicht so 

loslassen  = function(){trace("hallo"} 
this.renndaten.maerz_03.prototype.preselect = loslassen; 
this.renndaten.maerz_03.preselect(); 

wenn ich die Funktion schon mit prototyp auf bestehende Mcs vererben kann, 

wieso nicht auf einen speziellen??? 

Gruß Peter 

Other related posts: