I am working in Flash CS4 with AS3.
I have a TextPage.fla file that contains a dynamic text field (name: PageTitle) as an instance on the stage. In the document class (TextPage) I set the text of PageTitle according to some XML. This all works fine.
I have another fla file, SpecialTextPage.fla, and that also has the PageTitle dynamic text field on the stage.
I now try to have the SpecialTextPage document class inherit from Textpage:
public class SpecialTextPage extends TextPage
{
...
}
but I get a "1120: Access of undefined property PageTitle." error when trying to publish SpecialTextPage. The error location is given as TextPage.as
As a workaround I can just copy the whole TextPage.as file and add in the extra things I need in SpecialTextPage.as but I'd obviously prefer it if I could just extend it.
I got the feeling I am not quite understanding the relationship between flash's objects on the stage and the document class.
Can someone help?
The way I got around the problem was to disable declaring stage instances automatically. (Publish Settings --> Flash Tab --> Uncheck 'Automatically declare stage instances')
I then needed to declare pageTitle on my TextPage class as a public field:
public class TextPage extends MovieClip
{
public var pageTitle:TextField;
...
}