控制台相关方法
文章目录
- 控制台输入
- 1、清空
- 2、设置控制台
- 3、设置光标位置,1y = 2x
- 4、设置颜色相关
- 5、光标显隐
- 6、关闭控制台
- 思考 移动方块
控制台输入
//如果ReadKey(true)不会把输入的内容显示再控制台上
char c = Console.ReadKey(true).KeyChar;
1、清空
Console.Clear();
2、设置控制台
1、窗口大小
Console.SetWindowSize(100, 50);
2、缓冲区大小
Console.SetBufferSize(100, 50);
缓冲区高 Console.BufferHeight
缓冲区宽 Console.BufferWidth
3、设置光标位置,1y = 2x
Console.SetCursorPosition(10, 5);
4、设置颜色相关
1、文字颜色设置
Console.ForegroundColor = ConsoleColor.Green;
2、背景颜色设置
Console.BackgroundColor = ConsoleColor.White;
3、设置背景颜色过后,需要clear一次,才能把整个背景颜色改变
Console.Clear();
5、光标显隐
Console.CursorVisible = false;
6、关闭控制台
Environment.Exit(0);
思考 移动方块
通过W,S,A,D键,在控制台中控制一个方块上下左右移动。
//改变背景颜色
Console.BackgroundColor = ConsoleColor.Red;
Console.Clear();//改变字体颜色
Console.ForegroundColor = ConsoleColor.Yellow;
//隐藏光标
Console.CursorVisible = false;//位置信息,坐标x,y
int x =0, y =0;//不停的输入wasd键,都可以控制它移动
while (true)
{Console.SetCursorPosition(x, y);Console.Write("■");//得到玩家输入的信息char c = Console.ReadKey(true).KeyChar;//擦除之前的方块Console.SetCursorPosition(x, y);Console.Write(" ");switch (c){case 'W':case 'w':y -= 1;//改变位置后 判断新位置是否越界if (y < 0){y= 0;}break;case 'A':case 'a'://中文符号,再控制台占2个位置x -= 2;if (x < 0){x = 0;}break;case 'S':case 's':if (y > Console.BufferHeight - 1){y = Console.BufferHeight - 1;}y += 1;break;case 'D':case 'd':if (x > Console.BufferWidth - 2){x = Console.BufferWidth - 2;}x += 2;break;}
}