![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jan 2007
Сообщений: 302
|
Значит при клике создается Sprite на котором разные компоненты. На Sprite есть кнопка которая удаляет этот контейнер и его элементы "Btn_zurueck" мне не получается потом их обнулить и удалить обработчики событий.
Вот функция создания контейнера private function box_create(event:MouseEvent):void{ var label_t_fld1:TextField = lab_form(8,10,200,20,"Spieler Name"); var label_t_fld2:TextField = lab_form(8,177,200,20,"Tisch Name"); var label_t_fld3:TextField = lab_form(300,60,200,20,"Wälen Avatar"); addChild(box_create_cont); create_TileList(); text_inp(); box_create_cont.width = 650; box_create_cont.height = 450; box_create_cont.x = 200; box_create_cont.y = 20; com_box1.spieler(10,260); com_box2.einsatz(230,260); com_box3.startkapital(450,260); btn_Box1.mouseEnabled = false; btn_Box2.mouseEnabled = false; btn_Box3.mouseEnabled = false; box_create_cont.addChild(com_box1); box_create_cont.addChild(com_box2); box_create_cont.addChild(com_box3); box_create_cont.addChild(label_t_fld1); box_create_cont.addChild(label_t_fld2); box_create_cont.addChild(label_t_fld3); Btn_zuruck = simpl_Btn2.Btn(110,30,"Zuruck",0x288e20,1.0); Btn_spiel = simpl_Btn3.Btn(110,30,"Spielll",0x288e20,1.0); Btn_zuruck.x = 25; Btn_zuruck.y = 390; Btn_spiel.x = 515; Btn_spiel.y = 390; box_create_cont.addChild(Btn_zuruck); box_create_cont.addChild(Btn_spiel); Btn_zuruck.addEventListener(MouseEvent.ROLL_OVER, over_Btn); Btn_zuruck.addEventListener(MouseEvent.ROLL_OUT, out_Btn); Btn_zuruck.addEventListener(MouseEvent.CLICK, box_losh); Btn_spiel.addEventListener(MouseEvent.ROLL_OVER, over_Btn); Btn_spiel.addEventListener(MouseEvent.ROLL_OUT, out_Btn); Btn_spiel.addEventListener(MouseEvent.CLICK, create_Tisch); } private function box_losh(event:MouseEvent):void{ while (box_create_cont.numChildren > 0){ box_create_cont.removeChildAt(0); } //t_list = null; Btn_zuruck.removeEventListener(MouseEvent.CLICK, box_losh); removeChild(box_create_cont); box_create_cont = null; btn_Box1.mouseEnabled = true; btn_Box2.mouseEnabled = true; btn_Box3.mouseEnabled = true; } ![]() |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 183
|
А вы потрейсите его (box_create_cont) Он наверно вам null возвращает
Наверно вот из за этой строчки: |
|
|||||
|
Регистрация: Jan 2007
Сообщений: 302
|
понимаю, вот например я удаляю экземпляр который лежит в моем контейнере, потом обнуляю его, почему я не могу его вновь создать?
вот так к примеру private function box_losh(event:MouseEvent):void{ while (box_create_cont.numChildren > 0){ box_create_cont.removeChildAt(0); } t_list = null; Btn_zuruck.removeEventListener(MouseEvent.CLICK, box_losh); trace(t_list); removeChild(box_create_cont); //box_create_cont = null; btn_Box1.mouseEnabled = true; btn_Box2.mouseEnabled = true; btn_Box3.mouseEnabled = true; } null TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null". at MainScreen/create_TileList() at MainScreen/box_create() Уррряяя, разобрался. оказывается, у меня большинство переменных глобальные, и если я их обнулял, то обнулялись они тоже глобально, соответственно, глобально я переменным присвоил только тип, а создавал новые обьекты в самой функции. ![]() Вот правильный код, может кому пригодиться. Переменные var com_box1:Comboboxen; var com_box2:Comboboxen; var com_box3:Comboboxen; var t_inp_s_name:TextInput; var t_inp_t_name:TextInput; var t_list:TileList; private function box_create(event:MouseEvent):void{ var label_t_fld1:TextField = lab_form(8,10,200,20,"Spieler Name"); var label_t_fld2:TextField = lab_form(8,177,200,20,"Tisch Name"); var label_t_fld3:TextField = lab_form(300,60,200,20,"Wälen Avatar"); t_list = new TileList(); com_box1 = new Comboboxen(); com_box2 = new Comboboxen(); com_box3 = new Comboboxen(); addChild(box_create_cont); create_TileList(); text_inp(); box_create_cont.width = 650; box_create_cont.height = 450; box_create_cont.x = 200; box_create_cont.y = 20; com_box1.spieler(10,260); com_box2.einsatz(230,260); com_box3.startkapital(450,260); btn_Box1.mouseEnabled = false; btn_Box2.mouseEnabled = false; btn_Box3.mouseEnabled = false; box_create_cont.addChild(com_box1); box_create_cont.addChild(com_box2); box_create_cont.addChild(com_box3); box_create_cont.addChild(label_t_fld1); box_create_cont.addChild(label_t_fld2); box_create_cont.addChild(label_t_fld3); Btn_zuruck = simpl_Btn2.Btn(110,30,"Zuruck",0x288e20,1.0); Btn_spiel = simpl_Btn3.Btn(110,30,"Spielll",0x288e20,1.0); Btn_zuruck.x = 25; Btn_zuruck.y = 390; Btn_spiel.x = 515; Btn_spiel.y = 390; box_create_cont.addChild(Btn_zuruck); box_create_cont.addChild(Btn_spiel); Btn_zuruck.addEventListener(MouseEvent.ROLL_OVER, over_Btn); Btn_zuruck.addEventListener(MouseEvent.ROLL_OUT, out_Btn); Btn_zuruck.addEventListener(MouseEvent.CLICK, box_losh); Btn_spiel.addEventListener(MouseEvent.ROLL_OVER, over_Btn); Btn_spiel.addEventListener(MouseEvent.ROLL_OUT, out_Btn); Btn_spiel.addEventListener(MouseEvent.CLICK, create_Tisch); } private function box_losh(event:MouseEvent):void{ while (box_create_cont.numChildren > 0){ box_create_cont.removeChildAt(0); } t_list.removeAll(); t_list = null; t_inp_s_name = null; t_inp_t_name = null; com_box1 = null; Btn_zuruck.removeEventListener(MouseEvent.CLICK, box_losh); trace(t_list); removeChild(box_create_cont); //box_create_cont = null; btn_Box1.mouseEnabled = true; btn_Box2.mouseEnabled = true; btn_Box3.mouseEnabled = true; } Всем спасибо. !!! |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:29. |
|
|
« Предыдущая тема | Следующая тема » |
|
|