Probleme attacheMovie & Classe externe

Probleme attacheMovie & Classe externe - Flash/ActionScript - Programmation

Marsh Posté le 06-07-2005 à 14:59:30    

Hello,
 
Je suis en train de faire une IHM en flash et j'ai besoin de dessiner un schema depuis un fichier xml et qui doit etre modifiable par l'utilisateur.  
 
Je créer une biblihothèque qui comprend tous mes element de schéma. Mais quand j'ajoute mes elements avec attachMovie je n'arrive pas à utiliser l'element this dans ma class externe de ce clip.  :sol:  
 
Je m'explique, je créé un clip test, je fais une liaison avec comme identifiant test et comme Class externe Test.
 
Je créé un fichier Test.as avec son constructeur :

Code :
  1. class Test{
  2. function test(){
  3.   this._x = 100;
  4.   this._y = 200;
  5. }
  6. }


 
 
Dans ma frame j'ajout mon clip :

Code :
  1. _root.attacheMovie("test", "clip_ajouter", 1);


 
Et la j'ai une erreur en sortie qui me dis que la propriété nommée '_x' & '_y' n'existe pas  :cry:  
 
Quelqu'un a une idée  :??:  
 
Merci

Reply

Marsh Posté le 06-07-2005 à 14:59:30   

Reply

Marsh Posté le 06-07-2005 à 23:49:35    

Code :
  1. class Test extends MovieClip {
  2. function Test(){
  3.   this._x = 100;
  4.   this._y = 200;
  5. }
  6. }


 
( et fais bien attention à ce que ton constructeur aie le même nom que ta déclaration de classe .. c'est case sensitive !!! )

Reply

Marsh Posté le 07-07-2005 à 10:22:03    

Merci pour ta réponse, ça fonctionne :sol:
 
Pour le constructeur, c'est une erreur de frappe dans mon exemple d'explication ...
 
Par contre j'ai un autre problème, j'arrive pas à passer mes paramètres :
 

Code :
  1. _root.attacheMovie("test", "clip_ajouter", 1, {param1:1, param2:2});


 
 

Code :
  1. class Test extends MovieClip {
  2. function Test(){
  3.   this._x = 100;
  4.   this._y = 200;
  5.   trace(this.param1);
  6.   trace(this.param2);
  7. }
  8. }


 
Il me retroune une erreur....  
 
Merci (Je continu à cherhcer de mon coté)

Reply

Marsh Posté le 07-07-2005 à 11:05:55    

bozocarzu a écrit :

Merci pour ta réponse, ça fonctionne :sol:


 
Heuu ben ouais ! je vais pas te répondre un truc qui ne fonctionne pas ! je teste avant ! :sol:  
 

bozocarzu a écrit :

Il me retroune une erreur....


 
Faudrait voir à être un peu plus précis ! ...
Quelle erreur ?
Quand ?
 
Mais je suis prêt à parier que ce sont 2 erreurs :
There is no property with the name 'param1'
et
There is no property with the name 'param2'
 
mmmmh ?
 

bozocarzu a écrit :

Merci (Je continu à cherhcer de mon coté)


 
Ben j'espère bien ! :whistle:


Message édité par Mr Mala le 07-07-2005 à 11:40:26
Reply

Marsh Posté le 07-07-2005 à 11:41:02    

Bon allez .. vais pas te faire poireauter des heures ...
 
En fait, dans ta classe externe, TOUTES LES VARIABLES QUE TU VAS UTILISER DOIVENT ETRE DECLAREES !!!!!
Ici, _x et _y sont implicitement déclarées par l'extension de MovieClip ...
Mais param1 et param2 n'existent pas !
 

Code :
  1. class Test extends MovieClip { 
  2. var param1:Number;
  3. var param2:Number;
  4. function Test(){ 
  5.   this._x = 100; 
  6.   this._y = 200;
  7.   trace(this.param1);
  8.   trace(this.param2); 
  9. }


Reply

Marsh Posté le 07-07-2005 à 11:48:07    

Ouias c'est ce que j'avais trouvé :jap:  
 
Mais j'ai pas mis :Number
 
j'ai fais
 

Code :
  1. var param1;
  2. var param2;


 
C'est grave  :ange:

Reply

Marsh Posté le 07-07-2005 à 12:10:52    

Heuuu ben oui c'est grâve ! :D
Tu fais de l'AS2, tu dois typer tes variables ! [:spamafote]

Reply

Marsh Posté le 07-07-2005 à 13:30:36    

Ok merci,
 
J'ai pour l'instant rien typé mais je commence a avoir des problèmes dans mes condition, elle me disent que c'est pas egal alors que ça l'est => Pb de typage  :cry:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed