Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.10.2009, 03:36
kassini вне форума Посмотреть профиль Отправить личное сообщение для kassini Найти все сообщения от kassini
  № 1  
Ответить с цитированием
kassini

Регистрация: Oct 2009
Сообщений: 7
По умолчанию применение одного и того же кода к разным мувикам

Подозреваю, что вопрос не очень сложный, но не смог нормально сформулировать для поиска. Поэтому попытаюсь объяснить здесь, что я хочу:
Есть меню из надписей (кнопок-мувиков). Нужно, чтобы однажды написанный код анимации (например, изменение размера мувика при наведении) автоматически применялся для всех кнопок в списке. Захотел изменить анимацию всех кнопок - поменял этот "исходный код" и каждая кнопочка, соответственно, поменяла свое поведение.
Как я понимаю, тут нужна динамическая подмена имени в этом "исходном коде" на имя (instance name) кнопки, на которую в данный момент наведен курсор, но не знаю, как этого добиться. Помогите, плз!

Добавлено через 1 час 37 минут
спасибо, кажется, уже разобрался )

Старый 25.10.2009, 15:45
fessor вне форума Посмотреть профиль Отправить личное сообщение для fessor Найти все сообщения от fessor
  № 2  
Ответить с цитированием
fessor

Регистрация: Oct 2009
Сообщений: 101
могу предложить свой вариант
Код AS1/AS2:
function animateButton (someButt:MovieClip){
}
и юзать эту функцию к разным кнопкам по их нажатию, вотъ

Старый 26.12.2009, 17:41
Dumpil вне форума Посмотреть профиль Отправить личное сообщение для Dumpil Найти все сообщения от Dumpil
  № 3  
Ответить с цитированием
Dumpil

Регистрация: Feb 2004
Сообщений: 51
у меня похожая проблема
у меня есть 20 кнопок
я хочу что бы при наведении на любую из них она увеличивалась на 10% к примеру

function ab (bot:MovieClip){
bot._xscale+=10;
bot._yscale+=10;
}
как теперь вызвать функцию именно в момент наведения на кнопку ?


Последний раз редактировалось Dumpil; 26.12.2009 в 17:52.
Старый 26.12.2009, 18:09
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 4  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Немного по-другому:
Код AS1/AS2:
for (i = 1; i <= 20; i++) {
  _root['bot' + i].onRollOver = ab;
}
 
function ab (){
  this._xscale += 10;
  this._yscale + =10;
}
Если кнопки не на _root, то замените путь.
Оформите в посте код тегами AS и не склеивайте операторы, выражения и прочие элементы - код делается неудобочитаемым - и для вас , и для остальных.
К тому же быстрее он работать от этого не станет.


Последний раз редактировалось mooncar; 26.12.2009 в 18:19.
Старый 26.12.2009, 18:35
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 5  
Ответить с цитированием
VVall

Регистрация: Feb 2009
Сообщений: 1,195
Цитата:
Сообщение от mooncar Посмотреть сообщение
не склеивайте операторы, выражения и прочие элементы - код делается неудобочитаемым - и для вас , и для остальных.
Мне, наоборот, сильно мешают все эти лишние пробелы где попало. Что делать?

Старый 26.12.2009, 18:44
Dumpil вне форума Посмотреть профиль Отправить личное сообщение для Dumpil Найти все сообщения от Dumpil
  № 6  
Ответить с цитированием
Dumpil

Регистрация: Feb 2004
Сообщений: 51
спасибо, я пока что начинающий и мое представление о ас составляют крупицы познаний с прошлого + то в чем ща разобрался ) поэтому правильность написания кода это воще космос )
я так понял что в вашем коде для кнопок от 1й до 20й (bot1, bot2 ... bot20) будет выполянтья функция аб
а если все кнопки лежат в мувиклипе main где поменятьеться путь ?

Старый 26.12.2009, 18:46
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 7  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Как что делать? Если на люди код не выносите, пишите весь код в одну строчку, где это возможно, как некоторые HTML-параноики
Если код на публику выносится, лучше, чтобы он был читаемым.
Так больше вероятность получения помощи по вопросу.
Тэги, кстати, тоже не для модераторов введены, а для пользователей форума.
Например, когда вижу нечто вроде for(i=1;i<10;i++){, и так много строк, сразу разбираться желание пропадает.

Добавлено через 46 секунд
Цитата:
Сообщение от Dumpil Посмотреть сообщение
а если все кнопки лежат в мувиклипе main где поменятьеться путь ?
Код AS1/AS2:
for (i = 1; i <= 20; i++) {
  main['bot' + i].onRollOver = ab;
}

Старый 26.12.2009, 18:51
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 8  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Цитата:
Сообщение от VVall Посмотреть сообщение
Мне, наоборот, сильно мешают все эти лишние пробелы где попало. Что делать?
А где попало и не надо ставить. Есть четкие конвенции по оформлению кода. Довольно логичные причем =)

Пробел не ставится между унарным оператором и операндом. Бинарные и тернарные операторы нужно отделять пробелами, иначе читается это все просто отвратительно.

Старый 26.12.2009, 19:01
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 9  
Ответить с цитированием
VVall

Регистрация: Feb 2009
Сообщений: 1,195
Цитата:
Сообщение от udaaff Посмотреть сообщение
Есть четкие конвенции по оформлению кода. Довольно логичные причем =)
Ссылку, если можно. Пока я таких не встречал, в каждой конторе были свои многостраничные соглашения по оформлению кода. На мой взгляд, ручное их соблюдение - это огромная трата времени впустую, форматирование кода должно быть автоматизировано.

Старый 26.12.2009, 19:04
Dumpil вне форума Посмотреть профиль Отправить личное сообщение для Dumpil Найти все сообщения от Dumpil
  № 10  
Ответить с цитированием
Dumpil

Регистрация: Feb 2004
Сообщений: 51
Код AS1/AS2:
for (i = 1; i <= 20; i++) {
  main['bot' + i].onRollOver = ab;
  main['bot' + i].onRollOut = ab2;
}
 
function ab (){
  this._xscale = + 110;
  this._yscale = + 110;
}
 
function ab2 (){
  this._xscale = + 100;
  this._yscale = + 100;
}
чуть добавил кода и получился нужный эфект ) теперь кнопки перебираються как на пианино ) спасибо что не прошли мимо )

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:22.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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