作为编程自我教育的一部分,我决定在C#中制作蛇。我遇到的问题是关于游戏表单的客户端大小。C#中的蛇 - 玩家可以缩放窗口 - 将手动缩放的窗口分成相同的方块
我希望玩家能够缩放游戏的窗口,窗口分为25 x 25个网格(每个坐标就像“一个像素”) - 这意味着,在任何时候,窗口都被分成25 x 25个相同的正方形。
我得到的问题是接近这个代码:
int SquareSide = (ClientSize.Width/25);
当我设置ClientSize
严格例如600 X 600,这是25的倍数,一切都OK。但是当我没有(例如通过手动调整大小,例如可以将大小改变为711 x 711)时,它会在右侧创建一个“条”,这似乎是像素的其余部分,它可以不会被使用,因为我们被分成整数。
我的问题是 - 是否有任何非常困难的方式来实现将任何客户端大小的表格分成25 x 25格没有这个问题?我尝试使用double
,但FillRectangle
方法不接受它。
我希望我的问题可以理解,谢谢你的回复。
这更明确IMO:'float SquareSide =(ClientSize.Width/25f);' – scottm
@Marco哦,是的,谢谢!这就是我会这样做的方式。 –
@scottm:是的,也许你是对的。无论如何,我们正在谈论语法糖;) – Marco