gpt4 book ai didi

c# - 在完成特定任务之前禁用 C# 控制台中的输入

转载 作者:行者123 更新时间:2023-11-30 15:08:47 25 4
gpt4 key购买 nike

我正在处理我的程序的一小部分,处理输入,基本上我有这个小代码:

bool Done = false;
while (!Done)
{
ConsoleKeyInfo key = Console.ReadKey(true);
if (key.Key == ConsoleKey.Enter)
{
//Action
}
}

这样做的主要问题是,即使在操作之间,代码也会处理 ReadKey。

因此,如果您有一个菜单,您可以在其中按键,然后如果您在显示此消息时按任何按钮,它会说“您按下了:x”,那么 ReadKey 已经获得了新的 key 。

所以我想阻止任何进一步的输入,直到用户再次看到菜单。

最佳答案

不太确定这是否有意义,就我个人而言,我喜欢击键不会消失并且我可以提前输入的情况。但是你可以像这样刷新键盘缓冲区:

while (!Done)
{
while (Console.KeyAvailable) Console.ReadKey(true);
ConsoleKeyInfo key = Console.ReadKey(true);
// etc..
}

关于c# - 在完成特定任务之前禁用 C# 控制台中的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5147327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com