keyPress处理中的问题

时间:2019-06-21 19:34:46

标签: java graph background processing

我是Processing的新手,遇到了一些问题。 我正在通过条形图显示文本中单词频率的数据可视化。

对于示例代码,我用200个随机数字序列替换了文本:在键盘上按下上下键时,条形图滚动,而屏幕的另一半应该显示每个随机选择的200个数字之一按下键R或按下H时显示文字“ Hello there”。

在一些帮助下,我能够在屏幕上正确显示我的数字,但是我不确定如何通过两个需要在两个不同的keyPressed交互(随机数和文本)之间使用来实现此功能。

我已经尝试过这种方法,但是我似乎无法在文本部分中使用此功能:

pwd['id']

1 个答案:

答案 0 :(得分:1)

你非常亲密。

首先:

  } else if (key == 'H' || key == 'h') { 
    // String h = "hello there"; -> delete this
    h = "hello there";
  }

之前,当您按下“ h”键时,您正在创建一个 new 字符串对象h,然后该对象在任何地方都没有使用。删除h的String开头。

接下来,当您先按R再按H,然后再按R时,仍然看到该文本的原因是因为h的值不为null,因此覆盖了R的结果。要解决此问题,请初始化为按下按钮时,将要绘制的值设为空:

  } else if (key == 'R' || key == 'r') { 
    //initialize h string to null
    if (h != null) {
      h = null;  
    }

    String numberString = "74,34...";
    String[] numbers = splitTokens(numberString, ",");

    int index = int(random(numbers.length));
    randomnumber = numbers[index];

  } else if (key == 'H' || key == 'h') { 
    //initialize random number to null
    if (randomnumber != null) {
      randomnumber = null;  
    }

    h = "hello there";
  }

enter image description here