PDA

Просмотр полной версии : Help me PLEEEAASSEEE!, как сделать подписи к кнопкам на флеше?


ader
17.03.2002, 02:01
Так вот, рассказываю ситуацию :cool: У меня задача сделать так чтобы при наведении на кнопку менялся вид мышки. Кнопок у меня много, тобиш я хочу сделать типа подписи кнопок. Как это реализовать я уже додумался :D . Я это реализовываю с помощью переменной. то есть на самой кнопке акшин:

on (rollOver) {
podpis = but1over;
}
on (rollOut) {
podpis = but1out;
}

ну и обробатываю я вот так (акшин я запихнул в кадр в первый кадр в _root`е):

if (podpis = but1over) {
Mouse.hide();
setProperty ("_root.alt", _visible, 1);
tellTarget ("_root.alt") {
gotoAndStop (1);
}
} else if (podpis = but1out) {
Mouse.show();
setProperty ("_root.alt", _visible, 0);
tellTarget ("_root.alt") {
gotoAndStop (1);
}
}


ну и так далее.. потом, если это другая кнопка я просто меняю значение переменной but2over(out) и обрабатываю новым if`ом.. + меняю в этом ифе gotoandstop на 2 кадр
( то есть:

tellTarget ("_root.alt") {
gotoAndStop (2);
}
)где в алте уже другая подпись..

может я чё не так делаю.. подскажите плиз.. бо неработает сволоч!!!

P.S. - к стати, вопрос.. переменные имеют месное значение или глобальное?.. то есть если у меня переменная задаётся в коком-то из Movie Clip`ов, то в _root или в другом клипе она работать будет или нет?
P.S. №2 - Тому кто нихрена не понял :D , шарит в акшин скрипте и хочет мне помочь, могу по мылу выслать исходник для наглядности.
Заранее благодарен!!!

Dr. Livsi
17.03.2002, 02:57

Dr. Livsi
17.03.2002, 03:02
А ты в команде If используй не знак присвоения(=), а == или eq.
Тобишь if (podpis = but1over) {} - не правильно,
а правильно:
if (podpis == but1over) {} или if (podpis eq but1over) {}

И по-поводу 2-ого вопроса, на счёт глобальных переменных.
Вообще, как задашь.
Можешь задать значение переменной вот так:
_root.peremannaya=1;
и она будет глобальной (и вызывать тебе её придётся как глобальную), а если задашь значение из какого-нибудь MovieClip`а (peremannaya=1; ), то в этом MC можешь так и вызывать эту переменную, а при работе в других MC для вызова этой переменной придётся указывать полный путь (_root.myMC.peremannaya=1; ).

Фуф, вроде объяснил, надеюсь поймёшь. :D

ader
17.03.2002, 03:05
Ок, биг сенькс :) , надеюсь теперь заработает :o !

Nox Noctis
17.03.2002, 03:43
вот. простенький примерчик.
дабы не загромождать я не стал перекидывать альт справа налево, когда он на крайних правых кнопках вылезает за экран. но это дело нехитрое ;)

ader
17.03.2002, 14:14
блин.. вот это решение! :eek: .. Правда оно пройдёт не всегда. А если допустим текста в подписи много надо будет?.. :cool: