Comment insérer plusieurs clips de classe dans un autre clip de classe

buzhug35 Messages postés 15 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 3 septembre 2011 - 5 janv. 2008 à 13:21
buzhug35 Messages postés 15 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 3 septembre 2011 - 5 janv. 2008 à 23:17
Bonjour,
Mon idée était de créer une horloge par le biais d'une classe UneHorloge à partir de 2 Clips de classes différentes : UnDisque et UneAiguille (ce sont toutes des classes dynamic extends MovieClip)

dans les variables de la classe UneHorloge j'ai déclaré :
var fond_mc:UnDisque;

dans la fonction constructeur j'ai voulu écrire :

fond=new UnDisque(avec les paramètres qui vont bien);

çà ne fonctionne pas ?

(pas mieux avec les aiguilles d'ailleurs alors que si je les appelle directement sans passer par la classe horloge, tout fonctionne)

J'ai opté pour une autre stratégie livrée ci-après, qui ne fonctionna pas non plus ? quelqu'un a-t-il une idée ?
D'avance merci

le code qui ne fonctionne pas :

 
/////////////////// 
/* UneHorloge.as */ 
/////////////////// 
 
dynamic class UneHorloge extends MovieClip 
{ 
private var taille:Number; 
private var conteneur_mc:MovieClip; 
 
public var couleur_trait:Number=0xFF6600; 
public var couleur_fond:Number=0x00FF99; 
public var couleur_grande_aiguille:Number=0x660000; 
public var couleur_petite_aiguille:Number=0xFFCC00; 
 
public var fonc_mc:MovieClip; 
public var grande_aiguille_mc:UneAiguille; 
public var petite_aiguille_mc:UneAiguille; 
 

public var place:Array; 
 
public function UneHorloge(tal:Number,cible:MovieClip,nom:String,profondeur:Number) 
    { 
    taille=tal; 
    conteneur_mc=this.createEmptyMovieClip(nom,profondeur); 
    conteneur_mc.clear(); 
    fond_mc=conteneur_mc.createEmptyMovieClip("fond_mc",3); 
    dessine_fond(); 
    } 
     
public function dessine_fond() 
    { 
    trace("coucou"); 
    fond_mc.lineStyle(4,couleur_trait); 
    fond_mc.moveTo(0,0); 
    fond_mc.moveTo(0-taille,0); 
    fond_mc.beginFill(couleur_fond,100); 
    var pas_dessin:Number=100; 
    var curseur_dessin:Number=1; 
    while (curseur_dessin1) 
        {
        fond_mc.lineTo(-taille+2*taille*curseur_dessin/pas_dessin,-2*taille/pas_dessin*Math.sqrt(curseur_dessin*(pas_dessin-curseur_dessin))); 
        curseur_dessin--; 
        } 
    fond_mc.endFill(); 
    } 
} 

1 réponse

buzhug35 Messages postés 15 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 3 septembre 2011
5 janv. 2008 à 23:17
J'ai trouvé un palliatif un peu lourd mais qui a l'avantage de fonctionner.
Je l'ai déposé dans mes sources pour ceux que cela peut intéresser ; il y a pas mal d'améliorations à faire encore !
http://www.flashkod.com/codes/HORLOGE-DONT-ON-PEUT-FAIRE-TOURNER-AIGUILLES_45318.aspx
0
Rejoignez-nous