![]() |
|
||||||||||
|
|||||
|
Регистрация: May 2003
Адрес: Москва
Сообщений: 186
|
UPDATE: http://www.flasher.ru/forum/showpost...02&postcount=6 (исходники в формате Flash CS3).
Есть проблема: не могу выровнять объекты circle (1 — 5) по верхней границе объекта square. В размере по-умолчанию всё позиционируется как надо. Однако, когда размер окна изменяется, объекты съезжают выше или ниже square. Так же не могу понять, каким образом выдержать расстояние между объектами circle и rec одинаковым. Оно тоже съезжает, если изменить размер окна. Большая просьба подсказать, в какую сторону копать. Исходник и код прикладываю. Всем известный код: /* (c) by Nox Noctis for noregret.org and flash-mx.ru feel@noregret.org sample 3 for tutorial: http://noregret.org/tutor/elastic/ */ // настройки сцены Stage.scaleMode = "noScale"; Stage.align = "TL"; // создадим объект для реагирования на изменение габаритов окна var resize_obj = {}; // запомнили нормальную ширину resize_obj.normal_width = 900; // запомнили нормальную высоту resize_obj.normal_height = 675; // самое главное: список объектов, которые будем перемещать resize_obj.position = [square, circle, circle2, circle3, circle4, circle5, rec1, rec2, rec3, rec4, rec5, ]; // собственно, реакция на изменения габаритов окна resize_obj.onResize = function() { _root.TF1.text = "текущие габариты ролика: "; _root.TF1.text += Stage.width+"x"; _root.TF1.text += Stage.height; var clip; for (var i in this.position) { // перебираем все клипы в списке clip = this.position[i]; // восстанавливаем пропорции для каждого клипа clip._x = Stage.width*clip._xRatio; clip._y = Stage.height*clip._yRatio; // если для клипа определена пропорция по ширине if (clip._widthRatio != undefined) { clip._width = Stage.width*clip._widthRatio; } // если для клипа определена пропорция по высоте if (clip._heightRatio != undefined) { clip._height = Stage.height*clip._heightRatio; } } }; // связь между классом Stage и объектом resize_obj Stage.addListener(resize_obj); /* запоминаем пропорции координат (отношение координат к нормальной ширине/высоте) */ var clip; for (var i in resize_obj.position) { // перебираем все клипы в списке clip = resize_obj.position[i]; // пропорция по горизонтали clip._xRatio = clip._x/resize_obj.normal_width; // пропорция по вертикали clip._yRatio = clip._y/resize_obj.normal_height; } /* запоминаем пропорции высоты и ширины (отношение габарита к нормальной ширине/высоте) */ square._Ratio = square.noScale; circle._Ratio = circle.noScale; circle2._Ratio = circle2.noScale; circle3._Ratio = circle3.noScale; circle4._Ratio = circle4.noScale; circle5._Ratio = circle5.noScale; rec1._Ratio = rec1.noScale; rec2._Ratio = rec2.noScale; rec3._Ratio = rec3.noScale; rec4._Ratio = rec4.noScale; rec5._Ratio = rec5.noScale; resize_obj.onResize();
__________________
Достал уж всех своими глупыми вопросами... Последний раз редактировалось serdeles; 14.05.2010 в 16:14. |
![]() |
Часовой пояс GMT +4, время: 19:44. |
|
|
« Предыдущая тема | Следующая тема » |
|
|