MouseEvent的键码?

祖鲁族

因此,据我所知,有一些代表击键的键码,例如:

public function left(e:KeyboardEvent):void
{
    if (e.keycode == 65)
    {
       leftKey = true;
    }
}

我想用这种逻辑做类似的事情,并将其应用于鼠标事件。我在Google上进行了搜索,但没有找到关于Flashdevelop AS3的太多结果。是否会有代表鼠标事件的键码?例如:

stage.addEventListener(MouseEvent.MOUSE_DOWN, down);
stage.addEventListener(MouseEvent.MOUSE_MOVE, move);
stage.addEventListener(MouseEvent.CLICK, click);

public function down(e:MouseEvent):void
{
    if (e.keycode == ?)
}
public function move(e:MouseEvent):void
{
    if (e.keycode == ?)
}
public function click(e:MouseEvent):void
{
    if (e.keycode == ?)
}

提前致谢!

尼尔·戴维斯(Neal Davis)

当你火,一个鼠标事件具有连接到它的侦听器,则该侦听相关联的功能将被调用。时期。然后,您无需再次检查鼠标事件是否发生。这就是事件侦听器的全部优点。为了确保您理解它,我将举一个例子。

stage.addEventListener(MouseEvent.CLICK,mClick);

伟大的。我们在舞台上添加了一个听众。现在,只要您在舞台上的任何位置单击,此侦听器都将导致该mClick函数被调用。现在我们编写mClick函数。

private function mClick(me:MouseEvent):void{
    trace("me.target.x",me.target.x);
    trace("me.target.y",me.target.y);
}

me只是我们选择代表触发该功能的事件的变量。Event是一堂课。AMouseEvent是的子类Event因此,我们说这meEventsublcass MouseEvent,这是此功能的预期输入如果尝试在代码的其他位置调用此函数,则会抛出错误,表明该函数需要某种输入。

me.target东西导致得到触发事件。在这种情况下,它是鼠标,me.target.x单击鼠标时鼠标的x位置也将是鼠标。

这就是全部。您只是通过尝试将特定的解决方案应用于另一个问题(即如何在键盘上注册按键)而使自己有些困惑。从根本上来说,它们的处理方式略有不同。随着键盘,我们检查侦听如果键盘有一个键按下,然后在事件处理程序,我们确定其中一个键被按下。对于鼠标事件,我们将为鼠标移动,鼠标单击,鼠标左键单击和鼠标中键使用不同的侦听器。由于每个特定事件都有自己的侦听器,因此我们不必评估在处理程序中按下了哪个按钮:

public function left(e:KeyboardEvent):void
{
    if (e.keycode == 65)
    {
       leftKey = true;
    }
}

e是导致该事件的事。在这种情况下,请使用键盘琴键。每个键都有一个键码。但是,我们不必为键盘上的每个按键编写不同的侦听器,而是只需编写一个侦听器和一个函数,然后评估在函数内部按下了哪个键。如前所述,使用鼠标左键可获得自己的事件侦听器,因此无需(或没有能力)在事件侦听器中进行检查。有诸如ROLL_OVERMOUSE_UP和的属性MOUSE_DOWN查看文档以获取完整列表。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

点的键码是什么?

来自分类Dev

在不同的键码之间转换

来自分类Dev

Windows虚拟键码

来自分类Dev

排除键码 (android)

来自分类Dev

特殊字符的虚拟键码

来自分类Dev

tkinter 中的键码

来自分类Dev

模拟MouseEvent

来自分类Dev

python键码和configparser协助

来自分类Dev

C#ASCII到键码?

来自分类Dev

键码无法在javascript中使用

来自分类Dev

xmodmap shift +键码产生keyym

来自分类Dev

查找十六进制键码

来自分类Dev

禁用键码序列的unicode解释

来自分类Dev

Purescript 无法从键盘获取键码

来自分类Dev

将wParam转换为虚拟键码

来自分类Dev

Android KeyEvent和键码之间的区别

来自分类Dev

添加蓝牙键盘后重新映射键码

来自分类Dev

添加蓝牙键盘后重新映射键码

来自分类Dev

用XKB覆盖一些键码

来自分类Dev

将键码转换为char / string

来自分类Dev

为什么pygame的键码是特定于OS的?

来自分类Dev

将扫描码映射到键码

来自分类Dev

打印屏幕的键码(44不起作用)

来自分类Dev

伪造的键码,用于重新映射的键盘键

来自分类Dev

java.lang.IllegalArgumentException:无效的键码

来自分类Dev

Java Swing keyEvent 与 keyPressed/keyReleased - 不同的键码?

来自分类Dev

Javafx KeyEvent和MouseEvent

来自分类Dev

类型'MouseEvent <Element,MouseEvent>'不能分配给类型'MouseEvent <HTMLDivElement,MouseEvent>'

来自分类Dev

为什么第二次按时返回键码而不是键码的假值?