Flash AS3: ReferenceError: Ошибка # 1056: Невозможно создать свойство

17

Я пишу что-то в Flash / AS3, и я столкнулся с этой проблемой:

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

В принципе у меня есть класс документа, и я могу создавать экземпляры клипов movieclips и компилироваться без проблем. Но когда я помещаю текстовое поле ввода (значок «T» в палитре) на сцене и отказывается скомпилировать с указанной ошибкой.

Я не уверен, что это имеет значение, но я пишу свой ActionScript в FlashDevelop, с компиляцией, сделанной во Flash IDE. У меня также есть Strict Mode и Warnings Mode , выбранные в Publish Settings -> Flash -> Script -> Settings... -> Errors .

Я искал решения для этого онлайн, и единственные предложения там, кажется, не вставлять текстовое поле на оленя в Flash IDE, а вместо этого динамически создавать их в классе документа.

Есть ли лучшее решение?

Спасибо

    
задан bguiz 14.11.2009 в 13:59
источник
  • Отправьте стек и строку (вместе с некоторым контекстом), где выдается ошибка. –  Ryan Lynch 14.11.2009 в 14:20

1 ответ

28

Похоже, что у вас есть «Автоматически объявлять экземпляры сцены» снято, и, следовательно, если вы хотите добавить экземпляры с именем , вам необходимо объявить их в своем классе

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

Вы можете найти параметры экземпляра этапа объявления на вкладке флэш-памяти в свойствах вашего фильма и нажать «Настройки» рядом со сценарием Script: Actionscript 3.

Лично у меня всегда есть этот флажок, поэтому он заставляет вас объявлять экземпляры в вашем классе, и вы можете лучше отслеживать, что происходит.

    
ответ дан Les 14.11.2009 в 17:53
  • Спасибо! Вы были правы в том, что объявили экземпляры сцены непроверенными, это то поведение, которое я хотел. Моя ошибка заключалась в том, что я объявлял текстовые поля как flash.text.TextField, но вместо TextInput. Я был в тупике, потому что это давало мне ссылочную ошибку вместо Type Error. –  bguiz 15.11.2009 в 02:25
  • Где вариант: «Автоматически объявить экземпляры сцены» найдено? –  Leon Gaban 05.01.2010 в 23:16
  • , если вы хотите опубликовать настройки, выберите вкладку «Flash», на которой вы должны нажать кнопку «Настройки» рядом с полем выбора, отображающим «ActionScript 3». В этом окне вы можете снять флажок «автоматически объявлять экземпляры сцены», –  Les 06.01.2010 в 10:13