Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Сбивается ширина и высота мувиклипа (http://www.flasher.ru/forum/showthread.php?t=173873)

Zizilk 13.01.2012 02:21

Сбивается ширина и высота мувиклипа
 
Имеется мувиклип, в него вложена куча всякой всякины. Но суммарная длинна и ширина мувиклипа не превышает 50 и 80 соответственно. Клип экспортирован в As3 чтобы можно было создавать его копии.
А теперь проблема: если создавать мувиклп из кода то его высота и длина после вставки в родителя становятся равными 100 и 151. При этом если маштабировать сам мувиклип до вставки, либо в нём самом, то жмётся содержимое, а поля получающиеся из незаполненой части остаются такими же. С размерами мувиклипа нигде не играю, и не работаю.

В чём может быть проблема

Dukobpa3 13.01.2012 02:40

Ну торчит какая-то штука незаметная за границу мувика. Стереть ее и дело с концом)

Universe 13.01.2012 04:27

размер мувиклипа как раз и определяется его содержимым. Часто сталкиваюсь с подобной проблемой при использовании мувиков с маскам, которые скрывают какие то блоки с прокрутками. Решения проблемы вижу следующие:
1. Создайте внутренние переменные mcWidth, mcHeight которым присвойте нужные значения и опирайтесь на них при позиционировании.
2. Используйте "магические цифры" при позиционировании.
3. Создайте какой нибудь мувик bg, который по высоте и ширине будет соответствовать "правильному" размеру мувиклипа и опирайтесь на него при позиционировании.
4. Опирайтесь на размеры уже существующего объекта в мувике который хотите позиционировать.
Если у кого то есть другие варианты решения данной проблемы - рад буду услышать, самому интересна эта тема!

goodguy 13.01.2012 07:44

Лучше в таком случае создать класс наследник мувиклипа, переопределить в нем геттеры высоты и ширины и возвращать нужные значения.
Код AS3:

package {
        public class CustomMovieClip extends MovieClip {
                override public function get width():Number {
                            return 50;
                }
                override public function get height():Number {
                            return 80;
                }
        }
}


Zizilk 13.01.2012 12:49

Цитата:

Сообщение от Dukobpa3 (Сообщение 1056512)
Ну торчит какая-то штука незаметная за границу мувика. Стереть ее и дело с концом)

А как быть что при ресайзе получившиеся пустые поля остаются прежними?, тем более я пробовал выделять тот размер, который указан. Получается пусто, даже если там объект с нулевой альфой то баундбокс не засветился

Цитата:

Сообщение от Universe (Сообщение 1056520)
1. Создайте внутренние переменные mcWidth, mcHeight которым присвойте нужные значения и опирайтесь на них при позиционировании.

Наверно так и поступлю.

Всем спасибо


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

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