Guest Metaconta Posted October 21, 2021 Posted October 21, 2021 Hello: I want to adapt or transform from C# code to F#. Code C#: using System; namespace radioButton_consola_02_cs { class Program { #region Variables. private static readonly string[] TEXTO = new string[] { "( ) Option A ", "( ) Option B ", "( ) Option C ", " EXIT" }; private static int itemSeñalado; private static int itemSeleccionado; #endregion static void Main(string[] args) { // Window title. Console.Title = "RadioButton"; // Window size. Console.SetWindowSize(20, 5); // Green background. Console.BackgroundColor = ConsoleColor.Blue; // Black letters. Console.ForegroundColor = ConsoleColor.White; // I hide the cursor. Console.CursorVisible = false; // Stores the key pressed in the variable. ConsoleKey teclaInicial; do { // Clean screen. Console.Clear(); // Cursor position of the MAIN MENU title. Console.SetCursorPosition(0, 0); // Title. Console.Write(" MENÚ PRINCIPAL "); // Time position. Console.SetCursorPosition(4, 2); // Numeric format dd/MM/yyyy. Console.Write(DateTime.Now.ToString("ddd dd MMM")); // Stores a pressed key in the variable. teclaInicial = Console.ReadKey(true).Key; // Did you press the Enter key? if (teclaInicial == ConsoleKey.Enter) { // Yes. This function is executed. MenuPrincipal(); } } while (teclaInicial != ConsoleKey.Escape); } #region Main menu. private static void MenuPrincipal() { bool salir = false; // In itemSelecionado: // -1 = Not selected with * any option. // 0 = Select with * Option A. // 1 = Select with * Option B. // 2 = Select with * Option C. // Capture key and then validate. ConsoleKey tecla; // Every time you return to the menu, it is marked with the *. itemSeñalado = 0; do { //****************************************************************** // I draw the main menu. // Clean screen. Console.Clear(); for (int k = 0; k < TEXTO.Length; k++) { Console.SetCursorPosition(0, k); Console.Write(itemSeñalado == k ? "> " : " "); Console.Write(TEXTO[k]); Console.SetCursorPosition(3, k); Console.Write(itemSeleccionado == k ? "*" : " "); } // End of painting the main menu. //****************************************************************** // Read key entered by user. tecla = Console.ReadKey(true).Key; switch (tecla) { case ConsoleKey.Enter: if (itemSeñalado < 3) { itemSeleccionado = itemSeñalado; } salir = (itemSeñalado == TEXTO.Length - 1); break; case ConsoleKey.DownArrow: if (++itemSeñalado >= TEXTO.Length) { itemSeñalado = 0; } break; case ConsoleKey.UpArrow: if (--itemSeñalado < 0) { itemSeñalado = TEXTO.Length - 1; } break; } // I use the escape key as output. } while (!salir); } #endregion } } Thank you. http://electronica-pic.blogspot.com Continue reading... Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.