首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >发送没有键事件的keyCode?

发送没有键事件的keyCode?
EN

Stack Overflow用户
提问于 2014-02-04 16:22:06
回答 2查看 260关注 0票数 0

我得到了这个函数(在document类中)

代码语言:javascript
运行
复制
public function kyz(event:KeyboardEvent):void{
        trace(event.keyCode);
        switch (event.keyCode){
            case 65:{
                if (ppm.currentFrame<200 || ppm.currentFrame>300) {
                    ppm.gotoAndStop(301);
                    ssm.gotoAndStop(302);
                    llm.gotoAndStop(302);
                    mmm.gotoAndStop(302);
                    myTimer.stop();
                    pd.play();
                }else {
                    pd.play();
                    ppm.gotoAndPlay(10);
                    tlrnc-=10;
                }               
                break;
            }
            case 68:{
                if (ssm.currentFrame<200 || ssm.currentFrame>300) {
                    ssm.gotoAndStop(301);
                    ppm.gotoAndStop(302);
                    llm.gotoAndStop(302);
                    mmm.gotoAndStop(302);
                    myTimer.stop();
                    mTimer.stop();
                    sd.play();
                }else {
                    sd.play();
                    ssm.gotoAndPlay(10);
                    tlrnc-=10;
                }
                break;
            }
            case 74:{
                if (llm.currentFrame<200 || llm.currentFrame>300) {
                    llm.gotoAndStop(301);
                    ppm.gotoAndStop(302);
                    ssm.gotoAndStop(302);
                    mmm.gotoAndStop(302);
                    myTimer.stop();
                    mTimer.stop();
                    ld.play();
                }else {
                    ld.play();
                    llm.gotoAndPlay(10);
                    tlrnc-=10;
                }
                break;
            }
            case 76:{
                if (mmm.currentFrame<200 || mmm.currentFrame>300) {
                    mmm.gotoAndStop(301);
                    ppm.gotoAndStop(302);
                    ssm.gotoAndStop(302);
                    llm.gotoAndStop(302);
                    myTimer.stop();
                    mTimer.stop();
                    md.play();
                }else {
                    md.play();
                    mmm.gotoAndPlay(10);
                    tlrnc-=10;
                }
                break;
            }
        }
    }

接收关键事件并做些事情。现在,我试图将它们从另一个函数(为避免更改添加单击功能的整个代码)中传递keyCode,有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-04 16:43:34

您可以发送一个KeyboardEvent

代码语言:javascript
运行
复制
stage.dispatchEvent(
  new KeyboardEvent(KeyboardEvent.KEY_DOWN, true, false, myCharCode, myKeyCode));

只需将所需的keyCode添加为参数即可

票数 1
EN

Stack Overflow用户

发布于 2014-02-04 16:34:56

如果没有与用户的交互,则无法发送任何键盘或鼠标事件。您可以在另一个私有函数中处理这个问题:

代码语言:javascript
运行
复制
    private function keyDownHandler(event : KeyboardEvent) : void {
        this.handleEvent(event.keyCode);
    }

    private function handleEvent(keyCode : uint) : void {
        //some actions
    }

当您需要执行特定的操作时,您只需调用handleEvent函数,而不需要用户端的交互。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21557783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档