![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Oct 2010
Сообщений: 7
|
Добрый день!
Появился вопрос, на который нигде не могу найти ответа... Как выровнять относительно друг друга несколько мувиклипов? Необходимо силами кода. То есть взять из библиотеки 4 mc, положить их на сцену, выровнять по центру сцены, а потом сказать, чтобы отступы между ними были, скажем, 20 пикселей. Вариант сложить все 4 mc в один большой мувиклип и через Align тыркнуть в нем на 4 мелких mc не катит, нужно именно отдельно =( Буду благодарен за любую помощь в деле! |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 56
|
как-то так.
Добавлено через 1 минуту Да, забыл добавить, что это все законно, при условии что центр каждого мувика в верхнем левом углу. Я это ввел за правило и уже не задумываюсь об этом)
__________________
Mechanical life! Последний раз редактировалось Maxi_Hunter; 04.11.2010 в 22:45. |
|
|||||
|
Регистрация: Oct 2010
Сообщений: 7
|
Благодарю, это уже практически то, что нужно.
Единственный момент - после теперь, когда на сцене два mc, мне нужно их обоих выровнять по центру. В общем, пришлось немного помучиться, написать бог весть что, но получилось: var mc1:Mc1 = new Mc1; var mc2:Mc2 = new Mc2; var mc3:Mc3 = new Mc3; mc1.y = - (mc1.width + 20 + mc2.width + 20 + mc2.width) / 2; var mc1Position = - (mc1.width + 20 + mc2.width + 20 + mc2.width) / 2; mc2.y = mc1Position + mc1.width + 20; var mc2Position = mc1Position + mc1.width + 20; mc3.y = mc2Position + mc2.width + 20; Итак, что мы получили, mc1 создается левее центра сцены, на 20 пх правее создается mc2, еще на 20 правее - mc3. Они втроем выровнены по ширине сцены. Я просто надеялся, что можно избежать как-то этих танцев с бубном и сделать проще. С моими ограниченными знаниям AS3 приходится воротить такой вот огород |
|
|||||
|
Регистрация: Jun 2008
Сообщений: 56
|
Ну это не танцы с бубном, а самое простое решения данной задачи)
Более грамотный подход - написать функцию, которой передавать как параметры объекты, их смещения и выравнивания.
__________________
Mechanical life! |
|
|||||
private function hAlign(mcArray:Array, hSpace:int = 20):void { var widthSum:int = 0 for each (var i:MovieClip in mcArray){ widthSum += i.width } var wspace:int = widthSum + hSpace * (mcArray.length - 1); var posX:int = (stage.stageWidth - wspace) / 2; for (var j:int = 0; j < mcArray.length; j++){ var mc:MovieClip = mcArray[j] as MovieClip; mc.x = posX posX = posX + mc.width + hSpace; } } |
|
|||||
|
Регистрация: Oct 2010
Сообщений: 7
|
О, а вот это уже отлично!
Когда 2-3 объекта, еще не так страшно, а если их будет с десяток, то массивом на порядок проще! Спасибо большое, буду осознавать теперь =) |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:10. |
|
|
« Предыдущая тема | Следующая тема » |
|
|