Answers for "c# console application menu system"

C#
3

c# console application menu system

// This is a Visual Studio Console application.
// How to create a menu system!
// Make sure your using:
using System.Collections.Generic;

// Copy this into a class:
static int indexMainMenu = 0;

public static void mainMenu()
{
	Console.Clear();

	List<string> menuItems = new List<string>()
	{
    	"Play",
        "Settings",
        "Exit"
	};

    Console.CursorVisible = false;
    while (true)
    {
    	string selectedMenuItem = drawMainMenu(menuItems);
        if (selectedMenuItem == "Play")
		{
        	// Play the game, or start the app
		}
        else if (selectedMenuItem == "Settings")
        {
        	/* Go to settings. Call a method, in the method just
            copy this menu system and change the list names for
            each setting you want.*/
		}
        else if (selectedMenuItem == "Exit")
        {
        	Environment.Exit(0); // Or  System.Environment.Exit(0);
        }
	}
}

public static string drawMainMenu(List<string> items)
{
	for (int i = 0; i < items.Count; i++)
    {
    	if (i == indexMainMenu)
        {
        	Console.BackgroundColor = ConsoleColor.Gray;
            Console.ForegroundColor = ConsoleColor.Black;
            Console.WriteLine(items[i]);
        }
        else
        {
        	Console.WriteLine(items[i]);
        }
        Console.ResetColor();
	}

    ConsoleKeyInfo ckey = Console.ReadKey();
    if (ckey.Key == ConsoleKey.DownArrow)
    {
		if (indexMainMenu == items.Count - 1) { }
        else { indexMainMenu++; }
	}
    else if (ckey.Key == ConsoleKey.UpArrow)
    {
    	if (indexMainMenu <= 0) { }
        else { indexMainMenu--; }
    }
    else if (ckey.Key == ConsoleKey.LeftArrow)
    {
        Console.Clear();
    }
    else if (ckey.Key == ConsoleKey.RightArrow)
    {
		Console.Clear();
    }
    else if (ckey.Key == ConsoleKey.Enter)
    {
		return items[indexMainMenu];
    }
    else
    {
		return "";
    }

	Console.Clear();
    return "";
}

// wow you scrolled this far...
Posted by: Guest on September-03-2020

Code answers related to "c# console application menu system"

C# Answers by Framework

Browse Popular Code Answers by Language