Javascript 使用EaselJS使用范围滑块更新画布形状

Javascript 使用EaselJS使用范围滑块更新画布形状,javascript,canvas,createjs,easeljs,Javascript,Canvas,Createjs,Easeljs,使用EaselJS更新对象的属性时,如何重新绘制画布形状?我看到属性正在更新,但我的draw函数没有清除画布或使用新值重新绘制形状 HTML 值更改后,必须重新绘制矩形,或者更改后,可以使用命令方法修改其属性 var rect = new createjs.Shape(); rect.graphics.beginFill("#000").drawRect(0, 0, canvasObject.width, canvasObject.height); // Store the last com

使用EaselJS更新对象的属性时,如何重新绘制画布形状?我看到属性正在更新,但我的draw函数没有清除画布或使用新值重新绘制形状

HTML


值更改后,必须重新绘制矩形,或者更改后,可以使用命令方法修改其属性

var rect = new createjs.Shape();
rect.graphics.beginFill("#000").drawRect(0, 0, canvasObject.width, canvasObject.height);

// Store the last command (the drawRect)
var rectCommand = rect.command;

// On Change, update the command
rectCommand.w = canvasObject.width;
rectCommand.h = canvasObject.height;

// Remember to update the stage when things change
stage.update(); 

您可以查看有关命令和命令文档的信息。

我找到的另一个解决方案涉及Lanny提到的内容。只需删除draw函数内部的矩形,然后重新绘制

function draw() {

  stage.removeChild(rect);
  rect = new createjs.Shape();

  rect.graphics.beginFill("#000000").drawRect(0, 0, canvasObject.width, canvasObject.height);

  stage.clear();

  stage.addChild(rect);

  stage.update();
}

var rect = new createjs.Shape();
rect.graphics.beginFill("#000").drawRect(0, 0, canvasObject.width, canvasObject.height);

// Store the last command (the drawRect)
var rectCommand = rect.command;

// On Change, update the command
rectCommand.w = canvasObject.width;
rectCommand.h = canvasObject.height;

// Remember to update the stage when things change
stage.update(); 
function draw() {

  stage.removeChild(rect);
  rect = new createjs.Shape();

  rect.graphics.beginFill("#000000").drawRect(0, 0, canvasObject.width, canvasObject.height);

  stage.clear();

  stage.addChild(rect);

  stage.update();
}