簡體   English   中英

使用基於按下的鍵的菜單制作基本控制台 C# 應用程序

[英]Making a basic console c# application with a menu based on the key that is pressed

我正在嘗試根據用戶按下的鍵制作一個具有兩個選項的程序,它將執行不同的操作。 第二個選項必須顯示有關第一個選項中執行的操作的一些信息。 重點是嘗試制作一個導航菜單,用戶可以通過按“ESC”或“Enter”返回主菜單以繼續他選擇的任何內容

Console.WriteLine("\nCAMPAIGN 2022\nSelect what you want to consult:\n1) Votin Urn\n2) DataBase"); // to make clear, database will display info about votes quantity
        int options = Convert.ToInt32(Console.ReadLine());
        Console.WriteLine("----------------------");
        if (options == 1)
        {
            ConsoleKeyInfo menu;
            Console.WriteLine("\nVOTING URN");
            while (exit == false)
            {
                Console.WriteLine("\nSelect your vote:\n1) Jair Bolsonaro;\n2) Luiz 
                Inacio Lula da Silva;\n3) White;\n4) NulL");
                vote = Convert.ToInt32(Console.ReadLine());
                while (vote != 1 & voto != 2 & vote!= 3 & vote != 4)
                {  
                    if (increment == 0)
                    {
                        Console.WriteLine("\nInvalid Vote. Try again:");
                    }
                    vote = Convert.ToInt32(Console.ReadLine());
                    increment += 1;

問題是:我正在使用 if 語句,並且由於用戶選擇選項 2 時的本地范圍,例如,要知道誰有更多選票,該值將為 0。我嘗試使用 switch,但它是同一件事。 我能做些什么?

此外,當用戶按“ESC”返回選擇“Voting Urn”或“Database”時,顯示的文本的第一個字母會被剪切,就像“ampaing”而不是“Campaign”一樣。 我正在使用 ConsoleKeyInfo:

Console.WriteLine("Press \"Enter\" to continue or \"Escape\" to return to the main menu");
                menu = Console.ReadKey();
                if (menu.Key == ConsoleKey.Escape)
                {
                    exit = true;
                }
                if (menu.Key == ConsoleKey.Enter)
                {
                    exit = false;
                }

我會放置 while 循環,以便它也覆蓋菜單,然后在 swtich 語句中添加另一個選項,即“返回主菜單/退出應用程序”。 然后將所有內容都包含在該 switch 語句中,並可能執行一些功能,例如 TotalVotes() 和 Vote()。然后為您可以投票的每個人創建變量名,如果他們獲得投票,只需在 if 語句中 ++ 每個變量。 這也可能是一個錯字? “投票!= 2”。 看起來你的結構讓你變得更難了。

暫無
暫無

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

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