PDA

Просмотр полной версии : Перемещение объекта нажатием кнопки


bsbflasher
01.08.2010, 11:51
Вопрос такой:
имеется кнопка button_01. хочу, чтобы при нажатии на нее, объекты button_x, button_y и button_z переносились одновременно по вертикали на 100 единиц. нажал еще раз - перемещаются еще дальше на столько же. простите, если вопрос глупый, я еще новичек.
спасибо

Zik.
01.08.2010, 16:42
button_01.onPress = function():Void {
button_x._y += 100;
button_y._y += 100;
button_z._y += 100;
}
Или если вдруг объектов станет гораздо больше, то можно так

var arrayOfButtons:Array = [button_x, button_y, button_z];
button_01.onPress = function():Void {
for (var i:Number = 0; i < arrayOfButtons.length; i++) {
arrayOfButtons[i]._y += 100;
}
}

Если нужно больше, то просто вписывается новые объекты в массив через запятую
Оба кода писал тут, так что не тестировал

bsbflasher
02.08.2010, 02:41
спасибо большое, пробовал первый - работает отлично!
еще один вопрос, если не сложно:
как можно "ограничить" перемещение объектов?
например, я хочу, чтобы button_x, button_y и button_z можно было перемещать между до -200 и 600 по вертикали (y)? То чтобы они не залезали за эти рамки.

Добавлено через 22 часа 8 минут
up) !!!!!!

Добавлено через 47 часов 20 минут
up up up up up!

Zik.
04.08.2010, 17:16
Ну вот пример
Кстати, темы поднимать на этом форуме нельзя

bsbflasher
05.08.2010, 01:21
спасибо большое, буду разбираться!

Добавлено через 31 час 16 минут
Все отлично, только одна проблема осталась, которую не смог решить.
Объекты а,b и с у меня находятся по вертикали один под другим. Получается, что когда а достигает по вертикали точку 100, все до нее тоже доходят и объекты накладываются друг на друга. То есть мне нужно, чтобы кнопка а остановилась на координате 100; b, которая под а, остановилась на 150; и с которая в самом низу - на 200. Соответственно и с движением вниз: а - до 250, b - до 300 и с - до 350. Где можно это указать?