2010-02-18 3 views
0

J'essaie d'accéder à un composant mxml depuis mon fichier externe. par exemple accéder au composant mxml à partir du fichier actionscript externe

main.mxml:<br> 
<code>[mx:text id="myText" />]</code> 

file.as:<br> 
<code>var mainM:main = new main(); 

mainM.text.visible = true;</code> 

Je reçois l'erreur suivante:

[TypeError: Error #1009: Cannot access a property or method of a null object reference] 

Toutes les suggestions sur la façon d'aborder mieux.

Répondre

3

L'ID de votre instance de composant devient un membre de votre application et peut facilement être accessible comme si

import mx.core.Application; 
mx.core.Application.application.myText.visible = true; 
+0

donnera un essai – Gbolahan

1

Une réponse supplémentaire est que lorsque vous créez un nouveau composant Flex (nouveau myFlexComponent()), la les composants de l'interface utilisateur enfant ne sont pas créés jusqu'à ce qu'un appel CREATION_COMPLETE soit appelé, indiquant que le composant est entièrement créé. Dans le cas d'une application, il n'y en a qu'une, et elle est créée automatiquement par le framework, et référencée par (Application.application) comme indiqué ci-dessus.

Par exemple, si votre variable était une simple variable de classe (par exemple myDate: Date), vous pouvez y accéder via la syntaxe ci-dessus

Questions connexes