画布中的关键事件背景更改

时间:2015-12-09 18:26:30

标签: button canvas colors background

我试图在Canvas中添加一个keydown事件,将背景颜色改为随机颜色,到目前为止,我没有收到任何错误,但我的功能不起作用。

到目前为止,我想我可能要告诉函数将它应用到画布背景中?对我自己的判断不太确定><

WITH T
     AS (SELECT *,
                ROW_NUMBER()
                  OVER (PARTITION BY Sequence
                            ORDER BY NAME) AS RN
         FROM   @TEST)
SELECT NAME,
       Sequence
FROM   T
WHERE  RN = 1; 

1 个答案:

答案 0 :(得分:0)

代码生成一个新的随机颜色,并将颜色存储在局部变量中,但不会对颜色无效。代码需要用颜色重绘画布。假设你有一个id为“canvas”的画布......

<canvas id="canvas" width="400" height="400"></canvas>

然后fillBackgroundColor()方法可以更改为......

function fillBackgroundColor() {
    var colors = ["red", "green", "blue", "orange", "purple", "yellow"];
    var color = colors[Math.floor(Math.random()*colors.length)];
    var canvas = document.getElementById("canvas");
    var context = canvas.getContext("2d");
    context.fillStyle = color;
    context.fillRect(0, 0, canvas.width, canvas.height);
}

请注意,此代码使用随机背景颜色完全重绘画布。如果您已经在画布上绘制了任何前景对象,那么您还必须重新绘制这些前景对象。