2009-11-14 17 views
17

estoy escribiendo algo en Flash/AS3, y me encontré con este problema:de Flash AS3: ReferenceError: Error # 1056: No se puede crear la propiedad

ReferenceError: Error #1056: Cannot create property txtInput on package.name.DocumentClasss

Básicamente tengo una clase de documentos, y puedo cree instancias de clips de clips de película y compile sin problemas. Pero cuando pongo un campo de entrada de texto (icono "T" en la paleta) en el escenario, y se niega a compilar, con el error anterior.

No estoy seguro de si esto hace la diferencia, pero estoy escribiendo mi código ActionScript en FlashDevelop, con compilación realizada en Flash IDE. También tengo Strict Mode y Warnings Mode seleccionados en Publish Settings -> Flash -> Script -> Settings... -> Errors.

He buscado soluciones para esto en línea, y las únicas sugerencias parecen ser no insertar el campo de texto en la despedida en Flash IDE, y en su lugar crearlas dinámicamente en la clase de documento.

¿Existe una solución mejor?

Gracias

+0

Coloque el stacktrace y la línea (junto con algún contexto) donde se produce el error. –

Respuesta

28

Parece que usted tiene "declaran automáticamente instancias de etapa" sin control y por lo tanto, si desea agregar un nombrados casos, tiene que declarar en su clase

import flash.text.TextField; 
... 
public var txtInput:TextField; 
... 

Puede encontrar la configuración de instancias de declaración de etapa en la pestaña de flash en las propiedades de su película y hacer clic en "configuración" junto a Script: Actionscript 3 selectbox.

Personalmente, siempre lo tengo desmarcado, por lo que te obliga a declarar las instancias en tu clase y puedes seguir mejor lo que está sucediendo.

+0

¡Gracias! Estabas en lo correcto al declarar las instancias de etapa sin marcar, ese es el comportamiento que yo quería. Mi error fue que estaba declarando los campos de texto como 'flash.text.TextField' pero como TextInput en su lugar. Estaba perplejo porque me estaba dando un Error de referencia en lugar de un Error de tipo. – bguiz

+0

¿Dónde se encuentra la opción: "Declarar instancias de escenario automáticamente"? –

+2

si va a publicar configuraciones, seleccione la pestaña "flash" que debe tener un botón "Configuración" junto a la casilla de selección que muestra "actionscript 3" En esta ventana puede desmarcar "declarar instancias de escenario automáticamente" – Les

Cuestiones relacionadas