IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

[FLASH MX2004] Heritage de classe


Sujet :

Flash

  1. #1
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut [FLASH MX2004] Heritage de classe
    Salut


    je suis en train de faire une méthode pour dessiner des formes j'ai dc utilises des classes et de l'héritage

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    /**
     * Extension de la class Clip
     */
    class i_clip extends MovieClip {
    	 //---- private proprietee
    	 private var mc_Clip:MovieClip;
     
    	 //----ConstrucTor
    	 public function i_clip (sCible:MovieClip){
    		 mc_Clip=sCible.createEmptyMovieClip("sClip",1);
    	 }
    }
    /**
     * Dessiner une forme rectangle , rond , etc
     */
    class forme extends i_clip {
     
    	//---Private Methodes
    	private var sFond:String;
    	private var nAlpha:Number;
    	private var nEpaisseur:Number;
    	private var sBordure:String;
    	private var mcForme:i_clip;
     
    	//--- ConstrucTor
    	public function forme (nAlp:Number,nEpais:Number,sBord:String,sFnd:String,sCible:MovieClip)
    	{
    		// Creation Clip Vide
    		mcForme= new i_clip(sCible);
     
    		sFond = sFnd;
    		nAlpha=nAlp;
    		nEpaisseur=nEpais;
    		sBordure= sBord;
    	}
     
    	//---Methodes privée
    	private function _dessiner(Void):Void{};
    }
    /**
     * Dessiner rectangle
     */
    class rect extends forme {
          //---- ProPriétées Privées
    	private var nLargeur:Number;
    	private var nLongueur:Number;
     
    	//--- ConstrucTor
    	public function rect(nLarg:Number,nLong:Number,nAlp:Number,nEpais:Number,sBord:String,sFnd:String,sCible:MovieClip)
    	{
    		// cree une forme
    		new forme(nAlp,nEpais,sBord,sFnd,sCible)
     
    		nLargeur=nLarg;
    		nLongueur=nLong;
     
    	}
     
    }
    bon alors
    quand je fais ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    import i_clip.*;
     
    var rectangle:rect = new rect(100,50,100,1,"0x666666","0x333333",_root);
     
    rect._larg()
    j'ai ce message

    **Error** Scene=Scene 1, layer=Action, frame=1:Line 5: The property being referenced does not have the static attribute.
    rect._larg()
    ca veut dire quoi

    merci d'avance

  2. #2
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Salut,

    La propriété n'est pas statique donc il faut que tu lui donnes le nom de ton objet plutôt que celui de la classe.
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  3. #3
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    ah oui je suis bete !!

    merci

  4. #4
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    j'ai un autre problème

    je cree un methode dessiner
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public function _dessinner(Void):Void
    	{
    		mcForme.beginFill(sFond,nAlpha);
    		mcForme.moveTo(0,0);
    		mcForme.lineStyle(nEpaisseur,sBordure);
    		mcForme.lineTo(0,nlargeur);
    		mcForme.lineTo(nLongueur,nlargeur);
    		mcForme.lineTo(nLongueur,0);
    		mcForme.lineTo(0,0);
    		mcForme.endFill();
    	}
    mais j'ai cette erreur
    **Error** D:\Bolo\creation\Class_Flash\rect.as: Line 25: Type mismatch.
    mcForme.beginFill(sFond,nAlpha);

    **Error** D:\Bolo\creation\Class_Flash\rect.as: Line 27: Type mismatch.
    mcForme.lineStyle(nEpaisseur,sBordure);

    Total ActionScript Errors: 2 Reported Errors: 2

  5. #5
    Membre éprouvé
    Avatar de thecaptain
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Décembre 2003
    Messages
    919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Décembre 2003
    Messages : 919
    Points : 1 210
    Points
    1 210
    Par défaut
    Salut,

    mcForme.beginFill(sFond,nAlpha);
    Dans ta classe précédente, sFond est un String or dans beginFill il lui faut un Number C'est la meme chose pour sBorder Il faut que tu castes via Number(sFond)

    @++
    Libzippp (C++)
    Lost in AStorm

  6. #6
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    oui c bien ca
    en passant j'essaie de faire en sorte de dessiner un carré mais que je le vois progressivement se dessiner a l'écran

    qqn aurait une idée
    ?

  7. #7
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Salut,

    tu as ton code quelque part?
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  8. #8
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    voila moi mon idée
    faire deux tableaux 1 avec les x et autre y pour les 4 lignes
    et chaque fois que un ligne est terminé on pas ligne suivante

  9. #9
    Membre éprouvé
    Avatar de thecaptain
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Décembre 2003
    Messages
    919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Décembre 2003
    Messages : 919
    Points : 1 210
    Points
    1 210
    Par défaut
    Salut,

    En effet, l'idée est bonne Maintenant cela relève plus de l'algorithmique que du flash En fait il faut diviser tes x et y par le nombres d'interval voulus (autrement dit la vitesse à laquelle tu veux que ca se dessinne) et tu obtient le lineTo(x, y) à chaque itération

    @++
    Libzippp (C++)
    Lost in AStorm

  10. #10
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    En fait il faut diviser tes x et y par le nombres d'interval voulus (autrement dit la vitesse à laquelle tu veux que ca se dessinne) et tu obtient le lineTo(x, y) à chaque itération
    tu peux me donner plus d'explication

    j'ai essayer un truc mais mon rectangle est devenu un triangle

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [FLASH MX2004] Problème de classe
    Par JulPoWeR dans le forum Flash
    Réponses: 1
    Dernier message: 10/07/2005, 22h51
  2. [FLASH MX2004] Faire un array d'une nouvelle class
    Par fransouik dans le forum Flash
    Réponses: 9
    Dernier message: 27/12/2004, 17h39
  3. [FLASH MX2004] [AS2] Classe méthodes static
    Par bolo dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 16/12/2004, 18h26
  4. Réponses: 7
    Dernier message: 05/10/2004, 13h44
  5. [FLASH MX2004] Architecture d'une classe
    Par matN59 dans le forum Flash
    Réponses: 6
    Dernier message: 13/05/2004, 08h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo