c# - 输入未被接受
问题描述
理解:
- 刚开始去健身房的人的计划。(我正在尝试学习 C#)
- 首先,用户填写他的姓名、年龄、性别、体重身高。
- 然后用户选择一个目标。
为了更好地理解,沿着这些思路发生了一些事情。(经过上述步骤)
if (Goal.GoalStatusGainWeight == true && Console.ReadLine() == "y")
{
Console.Clear();
InitFiveByFive();
//Caluclate Calories based on Gender and Goal
GainWeight.ShowFoodsToGainWeight();
Nutrition.CalcuateCalories();
ExitToMenu();
}
这就是我的问题所在:
private static void ExitToMenu()
{
Console.WriteLine("PRESS ESC To Return to the MENU");
var input = Console.ReadKey();
if (input.Key == ConsoleKey.Escape)
{
Console.Clear();
InitMenu();
}
}
问题是当我回到菜单时。并再次输入一些东西。
do
{
var userInput = Console.ReadKey();
try
{
switch (userInput.Key)
{
case ConsoleKey.D1:
Console.Clear();
InitUser();
InitGoals();
Stats.ShowStats = true;
Menu.ShowMenu = false;
break;
case ConsoleKey.D2:
Console.Clear();
Menu.Disclamer();
Menu.ShowMenu = true;
Menu.ShowDiscalmer = true;
break;
case ConsoleKey.D3:
Console.Clear();
Menu.MadeBy();
break;
default:
Console.Clear();
InitMenu();
break;
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
throw;
}
if (Menu.ShowMenu == false)
{
Menu.MenuOnOff = false;
}
} while (Menu.MenuOnOff == true);
它不会再次接受输入。而且我不确定如何处理这种情况。在用户存在“锻炼计划”回到菜单后,我尝试再次按 1,(case ConsoleKey.D1:
)我的控制台应用程序刚刚关闭。
我希望我能得到你需要的一切来帮助我,如果有什么遗漏,请告诉我。
谢谢你。
解决方案
推荐阅读
- c# - 在 Active Directory 中查找上次更新电子邮件地址的日期/时间
- r - 使用因子列扩展数据框
- javascript - 延迟加载的后处理,将名称映射到标题和键
- typo3 - 从 TYPO3 8.7 升级到 9.5 后,我无法编辑我的记录
- sql-server - 以表和列列表为参数的 SQL 函数
- javascript - JSON解析不会转换成数组
- navigation - 关于 href="#" 的可访问性
- python - 用于高维度的 Einsum
- python - 无法打开文件“manage.py”:[Errno 2] 没有这样的文件或目录
- c++ - 不被识别为内部或外部命令