| 两个解决flash程序中使用快捷键与文本输入冲突的办法 |
|
两个解决flash程序中使用快捷键与文本输入冲突的办法 |
| 作者:佚名 来源:不详 更新:2007-1-13 20:55:44 错误报告 我要投稿 |
在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<pathArr.length; 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; }
|
|
| 文章录入:skyuu 责任编辑:skyuu |
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |