首页 > 解决方案 > 在处理过程中打印一次值

问题描述

我想这样做,以便当按下一个键时,我只能在控制台中打印一次我的变量(在本例中为 x)。到目前为止,我只找到了不断打印值的示例和帮助,这对我来说至关重要,但是它只打印一次。在这个草图中,我使用按键而不是按键来对逻辑进行故障排除,最后,如果我可以将按键的工作逻辑也应用于按键,那将是完美的。非常感谢您的任何回复。

void setup (){}

void draw (){
   print();
 }

void print()

{

  if(keyPressed == true){
    int x = 1;
     println(x);
      x = 0;
    }

}

标签: processing

解决方案


这比看起来更容易处理。我修改了您的代码片段以使您走上正轨:

int x = 0;

void setup (){}

void draw (){
   print();
 }

void printX() {
  println(x++);
}

void keyPressed() {
  printX();
}

keyPressed像事件一样处理。每次按下一个键时它只会触发一次,这就是为什么我在它自己的事件中寻找它以避免你的问题。

你这样做的方式是,你正在查看是否在draw()循环的每次迭代中都按下了一个键。当然,当你按下键盘键时,这个循环会发生不止一次(准确地说,默认为 60 次),因此println.

如果您有任何问题,我会在附近。玩得开心!


推荐阅读