Имеем две формы: главную и дочернюю. При открытии приложения видна главная форма, а дочерняя скрыта. Она становится видимой по нажатию на специальную кнопку. Главная, соответственно, скрывается. В дочерней форме назначен такой обработчик событий мыши:

Код AS1/AS2:
var if_cursor:Boolean = true;
carrier.useHandCursor = false;//carrier - просто клип
var mouse_move:Number = Null;
var obj:Object = {};
Mouse.addListener(obj);
mouse_move = getTimer();
carrier.onEnterFrame = carrierOnEnterFrame;
obj.onMouseDown = function():Void
{
Mouse.show();
mouse_move = getTimer();
carrier.onEnterFrame = carrierOnEnterFrame;
};
function carrierOnEnterFrame():Void
{
if (getTimer() >= mouse_move + 20000)
{
delete carrier.onEnterFrame;
Mouse.hide();
if_cursor = false;
}
}
obj.onMouseMove = function():Void
{
if (!if_cursor)
{
Mouse.show();
if_cursor = true;
}
else if (if_cursor)
{
mouse_move = getTimer();
carrier.onEnterFrame = carrierOnEnterFrame;
}
};
То есть предусматривается, что, когда открывается дочерняя форма, курсор должен исчезнуть через 20 сек. Так же он исчезает, если в течение 20 сек. мышь остается неподвижной. Проблемы или странности здесь две. Одна - это та, что абсолютно игнорируется команда mdm.Forms.SomeForm.setFocus(), то есть, невозможно установить фокус на любую из форм. Я уже поднимал когда-то эту тему, но ответа так и не нашел. Эта странность, в общем-то, не имеет к событиям мыши отношения, но, возможно именно из нее вытекает вторая странность. Она проявляется в том, что каждый раз, когда становится видимой главная форма, начинает срабатывать обработчик мыши для скрытой дочерней формы. Но происходит это только один раз. То есть, через 20 сек. курсор исчезает. Щелкаем или двигаем мышь - курсор появляется. И все. Мышь больше не исчезает. Делаем видимой-прячем дочернюю форму и в главной все повторяется снова. Для дочерней формы обработчик событий мыши может, в свою очередь, срабатывать неправильно, в зависимости от того, срабатывал он уже в главной форме или нет. Было предположение, что, возможно, все это происходит потому, что дочерняя форма, хоть и скрыта, но фактически находится под главной, и мышь реагирует на нее. Но задание координаты mdm.Forms.SubForm1.x=-50000 ни к чему не привело. Как же добиться того, чтобы в главной форме мышь не вела себя по сценарию дочерней?