我正在写一个小蛇游戏,我想在控制台窗口周围画一个边框。我目前使用此代码绘制水平边框:
static void DrawBorder()
{
// Horizontal borders
for (int i = 0; i < Console.WindowWidth; i++)
{
Console.SetCursorPosition(i, 0);
Console.Write("-"); // Top
Console.SetCursorPosition(i, Console.WindowHeight - 1);
Console.Write("-"); // Bottom
Console.SetCursorPosition(i, Console.WindowHeight - 4);
Console.Write("-"); // Bottom game border
}
}
但是,当我使用它时,控制台输出变为bit weird .. 因此,我尝试不使用此代码写入最后一行的最后一个字符并使用worked fine:
static void DrawBorder()
{
// Horizontal borders
for (int i = 0; i < Console.WindowWidth; i++)
{
Console.SetCursorPosition(i, 0);
Console.Write("-"); // Top
if (i != Console.WindowWidth - 1)
{
Console.SetCursorPosition(i, Console.WindowHeight - 1);
Console.Write("-"); // Bottom
}
Console.SetCursorPosition(i, Console.WindowHeight - 4);
Console.Write("-"); // Bottom game border
}
}
..除了它看起来不对称(我是一个真正的对称粉丝,你知道吗?)。我该如何解决这个问题?