首页 > 文档 > noLoop()停止循环
2017
06-30

noLoop()停止循环

noLoop()

例子:

 

void setup() {

  size(200, 200);

  noLoop();

}

 

void draw() {

  line(10, 10, 190, 190);

}

void setup() {

  size(200, 200);

}

 

float x = 0.0;

 

void draw() {

  background(204);

  x = x + 0.1;

  if (x > width) {

    x = 0;

  }

  line(x, 0, x, height);

}

 

void mousePressed() {

  noLoop();

}

 

void mouseReleased() {

  loop();

}

boolean someMode = false;

 

void setup() {

  noLoop();

}

 

void draw() {

  if (someMode) {

    // 执行语句

  }

}

 

void mousePressed() {

  someMode = true;

  redraw();  // 或者loop()

}

 

 

描述:

停止处理从连续执行draw()中的代码。 如果调用了loop(),则draw()中的代码将再次开始运行。 如果在setup()中使用noLoop(),它应该是块内的最后一行。

 

当使用noLoop()时,不可能在诸如mousePressed()或keyPressed()之类的事件处理函数中操作或访问屏幕。 相反,使用这些函数调用redraw()或loop(),它将运行draw(),它可以正确地更新屏幕。 这意味着当没有调用noLoop()时,不会出现任何图形,并且可能不使用像saveFrame()或loadPixels()这样的函数。

 

请注意,如果草图被调整大小,即使在指定了noLoop()之后,也将调用redraw()来更新草图。 否则,草图将进入奇数状态,直到调用loop()。

 

语法:noLoop()

 

返回: 空

 

相关:loop()

redraw()

draw()



最后编辑:
作者:卡萨布兰卡
这个作者貌似有点懒,什么都没有留下。

留下一个回复

你的email不会被公开。