Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   При присвоении значения width пропадает child (http://www.flasher.ru/forum/showthread.php?t=114763)

sospamom 08.08.2008 11:15

При присвоении значения width пропадает child
 
Код:

package code{
        import flash.display.*;
        import flash.events.*;
        import flash.ui.*;
        import flash.geom.*;
       
        public class Problem extends Sprite{
                public function Problem(){
                        //width = 300;

                       
                        var border:Shape = new Shape();
                        border.graphics.lineStyle(1);
                        border.graphics.drawRect(20, 20, 100, 100);
                        addChild(border);
                }
        }
}

Если с width снять комментарий, то border пропадает. Почему?

CEBEP 08.08.2008 11:39

а к чему относится этот width там?

sospamom 08.08.2008 12:32

Я думаю, что width относится к экземпляру класса Problem.
Переписал код так:
Код:

package code{
        import flash.display.*;
        import flash.events.*;
        import flash.ui.*;
        import flash.geom.*;
       
        public class Problem extends Sprite{
                public function Problem(){
                        addEventListener(Event.ADDED_TO_STAGE,addedToStageListener);
                }
                private function addedToStageListener(e:Event):void        {
                       
                        width = 800;

                        var border:Shape = new Shape();
                        border.graphics.lineStyle(1);
                        border.graphics.drawRect(20, 20, 100, 100);
                        addChild(border);
                }
        }
}

Всё равно border нет.

2morrowMan 08.08.2008 12:49

А зачем там вообще "width = 800;" ? )

В конце поставте "trace(this.scaleX);" и может поймете. )

sospamom 08.08.2008 13:26

Цитата:

Сообщение от 2morrowMan (Сообщение 757034)
А зачем там вообще "width = 800;" ? )

Ну там ещё в реальной программе есть и height. Хочу в данных пределах реагировать на мышь.

Цитата:

Сообщение от 2morrowMan (Сообщение 757034)
В конце поставте "trace(this.scaleX);" и
может поймете. )

не смог понять

CEBEP 08.08.2008 13:51

width сам по себе существовать не может, это свойсво.
ты шас просто зарезервирванное слово юзаешь

Alkaz 08.08.2008 15:06

Цитата:

Сообщение от CEBEP (Сообщение 757047)
width сам по себе существовать не может, это свойсво.
ты шас просто зарезервирванное слово юзаешь

width относится к данному экземпляру класса, собственно тоже самое что и this.width .

sospamom 08.08.2008 15:27

Цитата:

Сообщение от CEBEP (Сообщение 757047)
width сам по себе существовать не может, это свойсво.
ты шас просто зарезервирванное слово юзаешь

По моим представлениям width является свойством экземпляра класса Problem.

2morrowMan 08.08.2008 15:42

Цитата:

Сообщение от sospamom (Сообщение 757041)
Хочу в данных пределах реагировать на мышь.

Тогда почитайте в хелпе о Sprite.hitArea — это то что вам надо.

sospamom 08.08.2008 16:20

Цитата:

Сообщение от 2morrowMan (Сообщение 757065)
Тогда почитайте в хелпе о Sprite.hitArea — это то что вам надо.

То есть мне обязательно надо чем-то залить Sprite, чтобы он мог реагировать на мышь?


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

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