如果用户按下某个键,则在控制台应用程序中显示MessageBox

时间:2018-08-16 05:52:20

标签: c#

如果用户按下某个键(例如,S)但不暂停应用程序性能,我想在C#控制台应用程序中显示MessageBox。

P.S。我已经添加了System.Windows.Forms引用来显示MessageBox。

我已经尝试过类似的事情:

do {
    while (! Console.KeyAvailable) {
        // Do something
   }       
} while (Console.ReadKey(true).Key == ConsoleKey.S) {
    MessageBox.Show("Test");
}

但是它不能正常工作,因为预期;之后是while (Console.ReadKey(true).Key == ConsoleKey.S),而不是{

任何帮助将不胜感激。

谢谢!

3 个答案:

答案 0 :(得分:3)

您遇到错误

  

;预期的

因为您的do while(expression);循环语法不正确,所以请在do while(expression);的末尾添加分号(;)

class Program
    {
        static void Main(string[] args)
        {
            do
            {
                while (!Console.KeyAvailable)
                {
                    // Do something
                }
            } while (Console.ReadKey(true).Key == ConsoleKey.S);
            {
                MessageBox.Show("Test");
            }
        }
    }

我希望对您有帮助。

答案 1 :(得分:1)

do与第二个while连接。

do{
    // do something
} while( true/false-expression );

while( true/false-expression){
    // do something
}

是正确的代码。

您可能必须存储按键结果并稍后与ConsoleKey.S进行比较。

答案 2 :(得分:1)

do-while表达式的语法是

+

您错过了分号。在上面检查一下