渐变填充为for循环

时间:2015-10-07 23:15:07

标签: javascript css createjs

我在createjs画布上绘制了具有渐变填充和笔触的按钮。按钮数量在for循环内绘制。正如您将在小提琴中看到的,每个部分都是通过功能单独绘制的。但只有第一个函数运行才会绘制正确的填充。后续调用仅绘制渐变笔划Jsfiddle

for (i = 0; i < db.length; i++) {
        var btn = db[i];
        var sdb = btn.split("_");
        var blabel = sdb[0];
        var battrib = sdb[1]; 
        var bval = sdb[2]; 
        var sid = sdb[3]; 
        var tick = sdb[4]; 
        var cptn = sdb[5];
        var imageType = sdb[6]; 
        var buttonSize = 90 + 10;



        var bttn = new c.Shape();
        bttn.graphics.beginLinearGradientFill([grad1, grad2], [.2, 1], 0, 0,0,50 ).setStrokeStyle(3).beginLinearGradientStroke([grad2, grad1], [.2, 1], 0, 0,0,50 ).drawRoundRect(x, y, 85, 35,5);

        var label = new c.Text(blabel);
            label.font = font;
            label.color = '#000';
            label.x = x+8;
            label.y = y+6;


        m1.addChild(bttn, label);

        x+= buttonSize;
    }s.update();

1 个答案:

答案 0 :(得分:1)

这似乎对我有用。也许是你忘记了偏移你的按钮,所以你只看到第一个? bttn.y = i*40

https://jsfiddle.net/gskinner/wqu4nzdq/12/