两个解决flash程序中使用快捷键与文本输入冲突的办法 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

    程序|解决|用快捷键

在flash程序中使用快捷键,就可能会和文本输入引起冲突,主要是用单个字母或者shift+字母键作为快捷键时的冲突,比如当设置字母a为一个功能的快捷方法,但是当你进行文本输入的时候如果输入a就会同时引发事件,当然这不是我们所希望的,下面的两种方法来避免这种情况的出现:

    方法一:

    keylis = new Object();

    Key.addListener(keylis);

    keylis.onKeyDown = function() {

    var pathArr = Selection.getFocus().split(".");

    var foucs = _root;

    for (var i = 1; i

    foucs = foucs[pathArr[i]];

    }

    if (foucs instanceof TextField && fouse.type == "input") {

    trace(foucs);

    return;

    }

    if(Key.isDown(65))

    {

    //run...

    }

    }

方法二:

    //这种方法比较简单,但不能判断焦点文本的类型为输入类型

    if(Selection.getCaretIndex() >=0)

    {

    return;

    }

最新文章