按下键时退出do(c#)

时间:2015-12-13 15:36:40

标签: c#

我正在制作一个代码,显示屏上会显示一系列字符。我希望当按下一个键(任意键)时,程序退出do while。

do{
    Console.SetCursorPosition(Console.WindowWidth/2-2,3);
    switch(fotograma++%4)
        {
                case 0 :
                    Console.Write("|");
                    break;
                case 1 :
                    Console.Write("/");
                    break;
                case 2 :
                    Console.Write("-");
                    break;
                case 3 :
                    Console.Write("\\");
                    break;      
            }
        System.Threading.Thread.Sleep(50);

    }while(true);

2 个答案:

答案 0 :(得分:3)

我相信您可以使用Console.KeyAvailable来处理这种情况。要使其工作,请将while循环更改为:

do{
Console.SetCursorPosition(Console.WindowWidth/2-2,3);
switch(fotograma++%4)
    {
            case 0 :
                Console.Write("|");
                break;
            case 1 :
                Console.Write("/");
                break;
            case 2 :
                Console.Write("-");
                break;
            case 3 :
                Console.Write("\\");
                break;      
        }
    System.Threading.Thread.Sleep(50);

}while(!Console.KeyAvailable);

答案 1 :(得分:1)

我认为这应该可以胜任

Console.WriteLine("Press any key to stop");
do {
    while (! Console.KeyAvailable) {
        // Do something
   }       
} while (Console.ReadKey(true).Key != ConsoleKey.Escape);