Цитата:
|
Заранее прошу прощения, если мой вопрос(ы) обсуждался(лись) или они окажутся слишком глупыми, но в поиске и в умных книжках ничего не нашел нашел...
|
Плохо искал. Эта тема обсуждалась здесь не один раз. И только твоя просьба о прощении спасает тебя от побития ногами.
Цитата:
|
Заметил некоторые мелкие баги во флеше, но такого чесно говоря не ожидал...
|
Самое интересное, что чем больше ты будешь знать и уметь во флэше, тем меньше багов в нем будешь видеть. Но это так, к слову. Перейдем к делу.
Ты правильно решил сделать для появляющейся надписи – отдельный мувик. И, конечно же, удобно сделать этот мувик - один для всех кнопок. Только содержание надписи менять. Значит, в этом мувике будем использовать
динамическое текстовое поле, и менять надпись в зависимости от кнопки, на которую наводим мышь. И так, сделали такой мувик, и подлинковали его (дали ему linkage name. Допустим "tip").
Теперь напишем функцию для появления этого мувика:

Код:
function showTip(txt){
this.attachMovie("tip","tip",0,{_x:_xmouse+10,_y:_ymouse-10});
tip.tf.text = txt;
tip._alpha = 0;
this.onEnterFrame = function(){
tip.startDrag(false)
}
}
Ты заметил, что при вызове этого мувика, мы сразу даем ему полную прозрачность (tip._alpha = 0). И, для того, чтобы постепенно менять эту самую альфу, нам – в данном случае – не нужно использовать никакого getTimer и setInterval,- у нас есть намного более простой и доступный метод – onEnterFrame.
Используем его по назначению и пишем функцию изменения прозрачности. Пишем ее в таймлайне мувика-надписи.

Код:
this.onEnterFrame = function(){
t = _root.flag;
_alpha += (2*t*(_alpha<100)-10*!(t)*(_alpha>0));
if(_alpha<=0){
this.removeMovieClip();
}
}
А теперь вписываем в кнопки примерно такой код:

Код:
on(rollOver){
flag=1;
showTip("Это такая надпись");
}
on(rollOut, press){
flag =0;
}
Вот и все. А нет, вот еще одна мелочь. Для того, чтобы шрифт дружил с альфой, надо его ембедить. Для этого, - выдели динамическое текстовое поле и, на панельки "Properties" нажми кнопку "Characters". Выбери "All Characters".
Вот теперь все.
Подробности в примере.