在不点击舞台的情况下初始化键盘事件

Posted

技术标签:

【中文标题】在不点击舞台的情况下初始化键盘事件【英文标题】:initialize keyboard event without clicking the stage 【发布时间】:2014-03-03 21:49:44 【问题描述】:

我正在使用此代码使用我的键盘播放我的动画,但由于某种原因我不明白,我需要先单击舞台以使其正常工作,它应该自动工作,谁能帮我解决这个问题?

变量拼贴

拼贴=0

function gocollage1(e:KeyboardEvent):void

if (collage==0 && e.keyCode == Keyboard.RIGHT)

拼贴=1

myanimation.play();

stage.addEventListener(KeyboardEvent.KEY_DOWN, gocollage1);

【问题讨论】:

出于安全原因,舞台需要先获得焦点,然后才能捕获关键事件。您可以创建一个点击阶段的理由,例如“开始”或“接受继续”。 你是指stage还是swf? 舞台需要焦点,他们已将事件监听器附加到舞台上。它们本质上可能是相同的东西,舞台和瑞士法郎..你是什么意思?有人需要点击 swf(stage) 是的 我必须点击舞台中的任意位置才能使用我的键盘 舞台和swf不是一回事。将焦点放在舞台上并不是什么大不了的事。将焦点设置为 swf 是。 【参考方案1】:

如果您想将 swf 焦点设置到舞台上。

stage.focus = stage;

【讨论】:

以上是关于在不点击舞台的情况下初始化键盘事件的主要内容,如果未能解决你的问题,请参考以下文章

在不触发事件的情况下设置虚拟键/鼠标按钮状态

在不破坏表格视图单元格点击功能的情况下关闭 iOS 键盘

在不使用私有 API 的情况下切换“照亮键盘”

IOS 软键盘搜索,下一个,确定等按键的点击事件监听

JS事件

10.3 键盘事件