簡體   English   中英

按下鍵時從do退出(c#)

[英]exit from a do while when a key is pressed (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);

我相信您可以使用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);

我認為這應該做的

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM