Processing 鼠标按下不在while循环内更新

Processing 鼠标按下不在while循环内更新,processing,Processing,在处理论坛上发布了此消息,但没有得到任何帮助 我想知道为什么以下方法不起作用: void setup(){ size(400,400); } void draw(){ while (true) { if (mousePressed == true) {break;} } println("OK"); } mousePressed在单击过程中不会更新为true,这意味着绘制循环永远不会打印OK。有人知道为什么会发生这种情况吗?mousePressed变量仅在后续绘制调用

在处理论坛上发布了此消息,但没有得到任何帮助

我想知道为什么以下方法不起作用:

void setup(){
  size(400,400);
}

void draw(){
  while (true) {
    if (mousePressed == true) {break;}
  }
  println("OK");
}
mousePressed在单击过程中不会更新为true,这意味着绘制循环永远不会打印OK。有人知道为什么会发生这种情况吗?

mousePressed变量仅在后续绘制调用之间更新


重复测试无法更改的变量总是会失败。

因此,如果我理解正确,mousePressed函数不是中断,而是在绘图开始时执行的轮询?你能链接到任何描述这个的文档吗,因为我的搜索结果是空的。中断由操作系统处理,并通过消息泵发送到程序。像processing这样的框架接收这些消息,并将它们应用于变量,以便在每次运行主循环时使用。这对用户来说是隐藏的。这个过程消除了变量中的波动性和并发性问题。我无法找到任何支持此索赔的处理特定文档。我已经花了剩下的时间尝试了将近一个小时来在源代码中找到对这一点的引用。你自己的测试应该足够糟糕了。