Форум Flasher.ru

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

Шурик_2 14.10.2011 14:36

Не работает stageWidth, stageHeight
 
Код AS3:

package 
{
        import flash.display.Stage
        import flash.display.Sprite;
        public class matrix2 extends Sprite
        {
                public function matrix2()
                {
                        // Получаем размер рабочей области
 
                        var w:int = stage.stageWidth;
                        var h:int = stage.stageHeight;
                        trace("размер по горизонтали = ",h, "размер по вертикали = ", w); // [Fault] exception, information=TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
 
                        }
            }
}

Мануалы читал, экспериментировал. Результат один и тот же.

Inet_PC 14.10.2011 14:38

Нужно дождаться добавления на stage.

stweet 14.10.2011 14:38

Код AS3:

var w:int;
var h:int;
 
if (stage){
        w = stage.stageWidth;
        h = stage.stageHeight;
}
 
trace(w, h);


Inet_PC 14.10.2011 14:39

Код AS3:

addEventListener(Event.ADDED_TO_STAGE, onAdded);
 
//...
private function onAdded(e: Event):void
{
        var w:int = stage.stageWidth;
        var h:int = stage.stageHeight;
        trace("размер по горизонтали = ",h, "размер по вертикали = ", w);
}

Добавлено через 30 секунд
опаздал

Шурик_2 14.10.2011 14:40

Inet_PC, спасибо!

Inet_PC 14.10.2011 14:41

Кстати по горизонтали это w, а не h.

Шурик_2 14.10.2011 14:48

Цитата:

Сообщение от Inet_PC (Сообщение 1039142)
Код AS3:

addEventListener(Event.ADDED_TO_STAGE, onAdded);
 
//...
private function onAdded(e: Event):void
{
        var w:int = stage.stageWidth;
        var h:int = stage.stageHeight;
        trace("размер по горизонтали = ",h, "размер по вертикали = ", w);
}

Добавлено через 30 секунд
опаздал

Ругается!:
Цитата:

// [Fault] exception, information=TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null"

t4arty 14.10.2011 14:52

Код AS3:

public function pixScroll():void 
                {
                        if (stage) {
                                init();
                        }else {
                                addEventListener(Event.ADDED_TO_STAGE, init);
                        }
                }
 
                private function init(e:Event = null):void {
                        removeEventListener(Event.ADDED_TO_STAGE, init);
 
                }

и будет Вам счастье. (не пишите в кадрах :))

Inet_PC 14.10.2011 14:53

Покажите весь код.

Шурик_2 14.10.2011 14:56

Я пишу в классах, t4arty!
Inet_PC, одну минутку.

Добавлено через 3 минуты
t4arty, принёс мне счастье!:)


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

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