我正在开发 flex 应用程序,应用程序的一部分是网格。应用程序应该是稍后的游戏编辑器。
下面的截图说明了我的问题:我想在此处放置图像,但似乎我没有足够的声誉。 这是屏幕截图的链接 橙色方形和红色三角形无关紧要。
下面这段代码是红色方块的 Sprite (DisplayObjectContainer)。代码很乱,因为我刚开始使用 flex 并希望快速完成该网格。
public class Board extends Sprite
{
var board:Array;
public function Board(blockLength:Number)
{
super();
x = 0;
y = 0;
// Setting up two dim array
board = new Array(10);
for (var k:int = 0; k < board.length; k++)
{
board[k] = new Array(10);
}
// Orange-like box
graphics.lineStyle(1, 0xA3A3A3);
graphics.beginFill(0xCCAA00);
graphics.drawRect(x,y,100, 100);
graphics.endFill();
// red blocks
for (var i:int = 0; i < 10; ++i)
{
for(var j:int = 0; j < 10; ++j)
{
var block:Block = new Block(i*blockLength, j*blockLength);
board[i][j] = block;
this.addChild(block);
block.drawBlock(blockLength);
}
}
}
}
红方定义如下:
public class Block extends Shape
{
public function Block(x:Number, y:Number)
{
super();
this.x = x;
this.y = y;
}
public function drawBlock(length:Number)
{
graphics.lineStyle(1, 0xB3B3B3);
graphics.beginFill(0xFF0000);
graphics.drawRect(x,y,length, length);
graphics.endFill();
}
}
我真的不知道为什么会有差距。代码很少,我觉得我错过了一些非常明显的东西。板对象在其初始化后被添加到阶段。
为什么红块之间有空隙?