jet53
Messages postés7Date d'inscriptiondimanche 15 août 2004StatutMembreDernière intervention15 janvier 2009
-
7 janv. 2006 à 19:31
jet53
Messages postés7Date d'inscriptiondimanche 15 août 2004StatutMembreDernière intervention15 janvier 2009
-
10 janv. 2006 à 22:42
Bonjour,
Après avoir bien potassé la doc, je crois comprendre qu'en étendant une
classe, cela permet d'ajouter ses propres propriétés ou méthodes tout
en bénéficiant de celles de la classe "étendue".
Est-ce aussi valable pour la classe MovieClip ?
Si j'écris p.ex:
class Toto extends MovieClip {
var perso1;
var perso2;
function Toto() {
....
}
}
je m'attends à pouvoir utiliser mes propriétés (perso1 et perso2) mais aussi les propriétés de MovieClip (comme _x, _y ...)
Donc je devrais pouvoir écrire
var v:Toto = new Toto();
et pouvoir "jouer" avec v.perso1 mais aussi v._x
J'ai l'impression que cela ne fonctionne pas ?
Et d'après la doc, lors de l'appel au constructeur de la "sous-classe",
le constructeur de la "super-classe" doit être appelé par le
compilateur, donc le fait d'écrire new Toto(), cela devrait créer un
nouveau MovieClip ?
_benjy
Messages postés1575Date d'inscriptionvendredi 23 avril 2004StatutMembreDernière intervention21 février 20112 8 janv. 2006 à 19:09
Salut
Re
Bon j'ai fait plusieur essais, car je pensé que l'on pouvait directement créer un bj de class graph via createClassObject(), mais en fait c limité a la création d'obj de class UI (composants) et il doit tt de mm y avoir une occurence dans la bibliothèque (normal aprés tout fo bien les elt graphique a dispo).
donc le truc c faire ta class, et la lier a un obj graph, et le mettre sur ta scene via attachMovie, (ou les déposé a la main ca marche aussi)
tu trouvera un ex là : http://kolapsis.net/FlashKod/extends_MovieClip.zip sinon apres fo s'attaquer aux composant, c sympa aussi :) mais un poil plus complexe
++
_benjy
Messages postés1575Date d'inscriptionvendredi 23 avril 2004StatutMembreDernière intervention21 février 20112 8 janv. 2006 à 17:39
Salut
pour l'extends c tt a fait ca ... par contre pour l'utilisation il te manque un bout, il faut que tu créer un clip dans ta bibliothque et que tu lui assigne ta nouvelle class comme class conscrutrice
tu garde ton extends là, tu l'enregistre dans un repertoire Class (lui mm au mm niveau que ton fla)
dans le fla tu céer un clip vierge, et dans la bibliotheque, tu click droit > liaison et tu met dans le second champ : Class.Toto
de là en le déposant dans un clip, tu nomme l'occurence (occ1 pour l'ex) et en utilisant
var occ1:Toto; // cette déclaration sert a rien si t'as pas implémenté le dico de Flash pour la completion
occ1.perso1 = 99;
++ et bon courage
ps : look les composnt, c ien pratique pour comprendre l'extends (c:\doc & set\{user}\local setting\app data\macromedia\flash8\je sais plus\Class) attention c des dossier caché fo afficher tes dossiers system caché
jet53
Messages postés7Date d'inscriptiondimanche 15 août 2004StatutMembreDernière intervention15 janvier 2009 8 janv. 2006 à 17:53
Salut et un grand merci,
J'ai pas encore eu le temps d'essayer, je vais m'y mettre tout soudain...
Deux questions complémentaires:
- d'après ce que je comprends, la méthode décrite permet de "créer" le
fichier "à la main", en le tirant depuis la bibliothèque sur la scène;
est-ce qu'on peut créer des occurences de ce clip étendu par
programmation ?
- "implémenté le dico de Flash pour la completion" - où est-ce que je trouve de la doc pour faire fonctionner cette complétion ?
Merci pour l'info !
Vous n’avez pas trouvé la réponse que vous recherchez ?
_benjy
Messages postés1575Date d'inscriptionvendredi 23 avril 2004StatutMembreDernière intervention21 février 20112 8 janv. 2006 à 18:06
Salut
pour creer complettemnt un obj graph depuis le code c un peux une autre methode, je fait te preparé un ex, car ca me soule de tt ecrire
pour le dico, en fait ca ce fait quand tu créer des extention flash (extiontion manager), tu sais les mxp, la doc pour tt est assez chiante a trouvé
regarde sur ultrashock je crois qu'il y a un tuto la dessus
++
(je t post un url demo pour la class ici des que c fait)