PDA

Просмотр полной версии : Как сгенерить событие нажатия клавиши???


DEAFFF
02.11.2007, 15:27
Например есть обработчик нажатия клавиши.

Есть кнопка - мувик.

Я хочу что бы при нажатии на эту кнопочку мышкой генерировалось событие кей даун (с определенным кей кодом) и автоматически срабатывал обработчик нажатия клавиши.

Т.е. должно получится так, что как будто я нажал на клавишу, а на самом деле я нажал на кнопку на экране.

Способ вызывать обработчик события не предлагать, на это есть опеределнные причины.

Есть ли другие способы?

etc
02.11.2007, 16:08
key = Key;
o = _global.Key = {};
o.addListener = function(obj) {
key.addListener(obj);
}
o.removeListener = function(obj) {
key.removeListener(obj);
}
o.getCode = function() {
if (this._send) {
return this._code;
} else {
return ASnative(800, 1)();
}
}
o.broadcastMessage = function(name) {
if (typeof arguments.caller == 'function') {
this._send = true;
}
key.broadcastMessage(name);
if (typeof arguments.caller == 'function') {
this._send = false;
}
}
delete o;
btn.onPress = function() {
Key['_code'] = 8;
Key['broadcastMessage']('onKeyDown');
}
onKeyDown = function() {
trace(Key.getCode()+','+(Key.getCode()==Key.BACKSPACE));
}
Key.addListener(this);

Дописать предлагается самостоятельно.

NB! Код содержит кучу хаков и не рекомендуется к применению в AS2.

DEAFFF
02.11.2007, 16:53
Все заработало!
Огромное спасибо!