2010-03-20 117 views
14

我正在向C#移植一个小型的C++控制台游戏,看起来我无法停止将按键打印到控制台。如何禁止在.NET中将控件打印到控制台?

在C++中,我得到这个方法,这也被打印到控制台抑制击键击键:

bool Game::getInput(char *c) 
{ 
    if (_kbhit()) 
    { 
     *c = _getch(); 
     return true; 
    } 
    return false; 
} 

我试图做的做的在C#中的等价物:

Key = Console.ReadKey(); 

但是这并没有抑制字符被打印到控制台,造成明显的问题。任何想法如何弥补这一点?

回答

28

你想Console.ReadKey(true)

获取用户按下的下一个字符或功能键。被按压的键是任选显示在控制台窗口。

的参数 - 即所谓截距

确定是否显示在控制台窗口被按下的键。 true不显示按键;否则,虚假

+0

这很漂亮,谢谢 – RollRoll 2016-08-18 20:50:06