Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Не работает addChild (http://www.flasher.ru/forum/showthread.php?t=132855)

dixlofos 21.11.2009 20:09

Не работает addChild
 
основной код, с ним связанн fla файл:
Код AS3:

package { 
    import flash.display.MovieClip;
        import flash.text.*;
 
    public class SuperExample extends MovieClip       
    {
        public function SuperExample()
        {
            var myBase:Base = new Base();
 
        }
    }
}

класс "Base":
Код AS3:

package {
        import flash.text.TextField;
        import flash.text.TextFieldAutoSize;
        import flash.display.*;
        import flash.events.*;
 
        public class Base extends Sprite{
 
                trace("Base was colled");
                public function Base(){
                        myTextField();                       
                }
                public function myTextField(){
                        var mtf:TextField = new TextField();
                        addChild(mtf);
                        mtf.text = "Hello World!";
                        mtf.wordWrap = true;
                        mtf.border = true;
                        mtf.background = true;
                        mtf.backgroundColor = 0xFF00FF;
                        mtf.borderColor = 0x000000;
                        mtf.autoSize = TextFieldAutoSize.CENTER;
                        trace("myTextField was Called");
                        mtf.x = 200;
                        mtf.y = 200;
                        mtf.addEventListener(Event.ADDED_TO_STAGE, f2);
                }
 
                public function f2(e:Event){
                        trace("o_O O_O O_o");
                }
        }
}

Проблема в том, что видмо несрабатывет "addChild(mtf);"
И компилятор ошибок не выдает (вобще молчит как беларусский партизанин:quiet:)
В окне output сообщения Base was colled иmyTextField was Called выводяться, а o_O O_O O_o уже нет.
Спасайте=)

FlashRabbit 21.11.2009 20:25

В дисплей лист не добавлен myBase и слушатель события ADDED_TO_STAGE нужно ставить до addChild.

iNils 21.11.2009 20:26

А где addChild (myBase)?

dixlofos 21.11.2009 20:35

все понял, спасибо

SamFR 22.11.2009 00:49

Цитата:

Сообщение от FlashRabbit (Сообщение 867364)
...и слушатель события ADDED_TO_STAGE нужно ставить до addChild.

До addChild() ничего ставить не нужно. Вернее, не обязательно.
Вот если вы захотите сделать stage.addChild(), тогда да.


Часовой пояс GMT +4, время: 20:05.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.