PDA

Просмотр полной версии : Перекрытие событий


Lego
26.07.2004, 14:09
Есть динамически приаттачиваемые мувики. Каждый мувик содержит следующие элементы: текстовое поле, стрелочка вверх, стрелочка вниз.

Теперь для каждого такого мувика пишу:

myMc.onRollOver = function()
{
var col = new Color(this);
col.setRGB(0xFFFFFF);
}

myMc.onRollOut = function()
{
var col = new Color(this);
col.setRGB(0xCCCCCC);
}

В общем, навел-отвел - поменялся цвет.

Теперь хочу сделать так, чтобы при наведении на мувик, а именно на стрелочку (вверх/вниз), которая в нем содержится, у меня что-то происходило. Ну, допустим

myMC.arrowUp.onRollOver = function()
{
trace("U-la-la");
}


Ессснсо, ничего не выходит. На сколько хватает моего сознания, событие родительского мувика перекрывает аналогичное событие дочернего.

Подскажите, пожалуйста, как мне быть, как быть? Вычислять hitTest'ы мувиков или может быть есть более простое решение?

Большое спасибо.

Lego
26.07.2004, 16:07
Молчание... понятно. Пошел искать по форуму :p

DeliMIter
26.07.2004, 19:36
Ты абсолютно прав. Родительское событие перекрывает детское. И решается это многими способами ,часть из которых ты и сам указал.

silin
26.07.2004, 19:42
ты же сам уже ответил, тем более чего там вычислять
myMC.onMouseMove = function()
{
if(this.arrowUp.hitTest(_xmouse,_ymouse,true)) trace("U-la-la");
}
зы: чтобы как onRollOver работало надо будет еще флажок приделать

Nox Noctis
26.07.2004, 23:04
а я бы просто вставил в приаттачиваемый клип прозрачную кнопку, не захватывающую активной областью стрелки, и назначал бы вместо myMc.onRollOver вот такое: myMc.btn.onRollOver

зачем мудрить? хиттесты какие-то...

Nucer
27.07.2004, 04:27
не захватывающую активной областью стрелки Можно и не мудрить, главное чтоб лежала на нижнем слое.

Lego
27.07.2004, 11:18
ТАК тронут вниманием к своей скромной персоне. Думал забъете на вопрос :D
Спасибо за помощь, пошел двигать мозгами.