当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Processing keyPressed()用法及代码示例


Processing, keyPressed()用法介绍。

用法

  • keyPressed()
  • keyPressed(event)

返回

  • void

说明

每次按下一个键时都会调用一次keyPressed() 函数。按下的键存储在key 变量中。



对于非 ASCII 键,使用 keyCode 变量。 ASCII 规范中包含的键(BACKSPACE、TAB、ENTER、RETURN、ESC 和 DELETE)不需要检查键是否已编码;对于这些键,您应该直接使用 key 变量(而不是 keyCode )。如果您正在制作cross-platform 项目,请注意 ENTER 键通常用于 PC 和 Unix,而 RETURN 键用于 Mac。通过检查 ENTER 和 RETURN 确保您的程序可以在所有平台上运行。



由于操作系统如何处理键重复,按住一个键可能会导致多次调用 keyPressed() 。重复率由操作系统设置,并且可以在每台计算机上进行不同的配置。



请注意,有一个名为 keyPressed 的类似名称的布尔变量。有关更多信息,请参见其参考页。



鼠标和键盘事件仅在程序具有 draw() 时起作用。如果没有 draw() ,代码只运行一次,然后停止监听事件。



随着 macOS Sierra 的发布,Apple 改变了按键重复的工作方式,因此 keyPressed 可能无法按预期运行。请参阅这里 了解问题的详细信息以及如何解决它。

例子

// Click on the image to give it focus,
// and then press any key.

int value = 0;

void draw() {
  fill(value);
  rect(25, 25, 50, 50);
}

void keyPressed() {
  if (value == 0) {
    value = 255;
  } else {
    value = 0;
  }
}

相关用法


注:本文由纯净天空筛选整理自processing.org大神的英文原创作品 keyPressed()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。