2010-03-11 9 views
0

Avoir un problème étrange avec l'affectation d'un TextField à un clip.AS3 TextField est vide, n'accepte aucun de mes paramètres?

  nameFormat = new TextFormat(); 
      nameFormat.size = 14; 
      nameFormat.color = "0x000000"; 
      nameFormat.border = true; 
      nameFormat.font = "Arial"; 
      charName = new TextField(); 
      charName.defaultTextFormat = nameFormat; 
      charName.text = value.charname; 
      charName.x = 92.5; 
      charName.y = 6.5; 
      charName.width = 205; 
      charName.height = 21; 
      thechars[value.charid].addChild(charName); 

Si je trace charName.text il trace correctement, mais quand les contenant movieclip est affiché, il est toujours vide et aucun de mes paramètres (bordures, couleur de fond, etc ..) apparaissent. Je place plusieurs de ces MovieClips dans un autre MovieClip, qui est ensuite ajouté à une barre de défilement en tant que tel:

  scrollContent.addChild(thechars[newvalue.charid]); 
      theScroller.source = scrollContent; 

La chose étrange est que je suis en utilisant exactement la même méthode pour déposer un bouton dans chacun des ' thechars 'et il se présente et fonctionne bien. ET ... si je passe la souris sur l'endroit où textField devrait être, je peux voir ma souris passer d'un pointeur à un curseur de texte, donc les champs textFields apparaissent, ils sont juste vides?

Aide?

MISE À JOUR:

J'ai essayé quelque chose d'autre et je suis encore plus confus ... J'ai placé le code suivant à droite sur un cadre et la même chose est arrivé ... Je vois le textField est là avec ma souris, mais elle est vide et les propriétés n'ont aucun effet sur elle. Est-ce que je manque complètement quelque chose ici? Aurais-je pu écraser cette classe ou quelque chose? Si confus ...

  var descFormat2:TextFormat = new TextFormat(); 
      descFormat2.color = "0x000000"; 
      var charDesc2:TextField = new TextField(); 
      charDesc2.defaultTextFormat = descFormat2; 
      charDesc2.text = "THIS IS MY TEXT"; 
      charDesc2.x = 92.5; 
      charDesc2.y = 28.8; 
      charDesc2.border = true; 
      this.addChild(charDesc2); 

Répondre

1

Comme d'habitude, c'était quelque chose de stupide. J'ai eu un masque sur toute la zone ... qui apparemment ne fonctionne pas avec les champs de texte AS3? Étrange. J'ai enlevé le masque sur la zone et ils sont apparus. Pas tout à fait sûr comment cela a un sens mais cela a résolu le problème !!!

1

Si vous tentez d'y appliquer un masque, vous devez utiliser la propriété TextField.mask pour l'affecter après la création.

content de votre problème.