elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


  Mostrar Mensajes
Páginas: 1 ... 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 [38] 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 ... 255
371  Programación / .NET (C#, VB.NET, ASP) / Re: Crear una DLL y llamarla en otro lenguaje en: 16 Febrero 2019, 13:02 pm
Hola:



Les dejo un mini tutorial rápido en PDF por si alguien lo necesita.

Ver tutorial.

Saludos.

PD: Gracias a los compañeros del foro.
372  Programación / .NET (C#, VB.NET, ASP) / Re: Timer en vez de Sleep. en: 9 Febrero 2019, 17:12 pm
Muchas gracias mi muy distinguido amigo. ;)

Código
  1. using System;
  2.  
  3. namespace Parpadeo_texto_consola_01_cs
  4. {
  5.    class Program
  6.    {
  7.        static void Main(string[] args)
  8.        {
  9.            // Título de la ventana.
  10.            Console.Title = "Blink";
  11.  
  12.            // Tamaño ventana consola.
  13.            // X anchura.
  14.            Console.WindowWidth = 16;
  15.  
  16.            // Y altura.
  17.            Console.WindowHeight = 2;
  18.  
  19.            // Oculto el cursor.
  20.            Console.CursorVisible = false;
  21.  
  22.            // Como estamos en un ejemplo, da igual en este caso
  23.            // poner un bucle infinito. Quiero que se muestre el
  24.            // resultado.
  25.  
  26.            int t = 0;
  27.            System.Timers.Timer blink = new System.Timers.Timer(100);
  28.            blink.Enabled = true;
  29.            bool mostrar = true;
  30.            blink.Elapsed += (a, b) =>
  31.            {
  32.                switch (t++)
  33.                {
  34.                    case 0:
  35.                        mostrar = true;
  36.                        break;
  37.                    case 5:
  38.                        mostrar = false;
  39.                        break;
  40.                    case 6:
  41.                        t = -1;
  42.                        break;
  43.                }
  44.  
  45.                // Posición de la pantalla.
  46.                Console.SetCursorPosition(0, 0);
  47.  
  48.                // Mostrar texto en pantalla.
  49.                Console.Write(mostrar ? "Hola mundo" : "          ");
  50.            };
  51.            Console.ReadKey();
  52.        }
  53.    }
  54. }
  55.  

No me gusta el código de arriba, mejor el que dices. Sigo con ello y me alegro el ejemplo del gif que pusiste. ;)
373  Programación / .NET (C#, VB.NET, ASP) / Timer en vez de Sleep. en: 9 Febrero 2019, 11:10 am
Hola:

Quiero hacer un parpadeo de un texto en modo consola. Por ahora solo me sale con Sleep, pero no me gusta este. Aún así dejo un ejemplo de lo que quiero pero está hecho en Sleep.



Código
  1. using System;
  2. using System.Threading; // No olvidar.
  3.  
  4. namespace Parpadeo_texto_consola_01_cs
  5. {
  6.    class Program
  7.    {
  8.        static void Main(string[] args)
  9.        {
  10.            // Título de la ventana.
  11.            Console.Title = "Blink";
  12.  
  13.            // Tamaño ventana consola.
  14.            // X anchura.
  15.            Console.WindowWidth = 16;
  16.  
  17.            // Y altura.
  18.            Console.WindowHeight = 2;
  19.  
  20.            // Oculto el cursor.
  21.            Console.CursorVisible = false;
  22.  
  23.            // Como estamos en un ejemplo, da igual en este caso
  24.            // poner un bucle infinito. Quiero que se muestre el
  25.            // resultado.
  26.            while (true)
  27.            {
  28.                // Posición de la pantalla.
  29.                Console.SetCursorPosition(0, 0);
  30.  
  31.                // Mostrar texto en pantalla.
  32.                Console.Write("Hola mundo");
  33.  
  34.                // Retardo de 0.5 segundos. 1000 ml (mili segundos)
  35.                // es igual a 1 segundo.
  36.                Thread.Sleep(500);
  37.  
  38.                // Posición de la pantalla.
  39.                Console.SetCursorPosition(0, 0);
  40.  
  41.                // Mostrar espaciones en blanco para borrar texto anterior.
  42.                Console.Write("          ");
  43.  
  44.                // Retardo 0.3 seg.
  45.                Thread.Sleep(300);
  46.            }
  47.        }
  48.    }
  49. }

Quiero hacer lo mismo, pero con el Timer en modo consola, lo que me cuesta hacerlo. Ya qu el timer pude interrumpir el programa cuando está dentro del temporizador pero con el Sleep, hasta que no acabe el tiempo, el programa se queda como en esclavo, sobre todo en tiempos muy largos.

¿Hay alguna forma de hacerlo en modo consola?

Si se puede hacer el parpadeo en una función y lo llamo cuando quiera, mejor que mejor.

Saludos.
374  Programación / .NET (C#, VB.NET, ASP) / Re: Menús en modo consola en: 8 Febrero 2019, 20:47 pm
Hola:

Sí, haz entedido bien, tamién es mejor la opción booleana. Lo saqué así al final.

Código
  1.        public static void radiazo()
  2.        {
  3.            ConsoleKey teclaRadio;
  4.            Console.Clear();
  5.            do
  6.            {
  7.                Console.SetCursorPosition(0, 0);
  8.                Console.Write("Ver radio: ");          
  9.  
  10.                Console.SetCursorPosition(11, 0);
  11.                Console.Write(radio ? "On " : "Off");
  12.  
  13.  
  14.                teclaRadio = Console.ReadKey(true).Key;
  15.  
  16.                if ((teclaRadio == ConsoleKey.UpArrow) || (teclaRadio == ConsoleKey.DownArrow))
  17.                {
  18.                    radio = !radio;
  19.                }
  20.  
  21.            } while (teclaRadio != ConsoleKey.Enter);
  22.        }

Si vez que ahora dice el On y Off si pulso todo el rato arriba o abajo ya puedo cambiar, tal como lo haz entendido.

Si te fijas bien, el On y Off está fijo. Quiero que parpadee en cada 0.5 segundos, o lo que es lo mismo, 500 ms (mili segundos).

Iba a usar Sleep, pero prefiero usar timer para que no se quede esclavo el programa aunque sea corto de tiempo.

¿Por qué quiero hacer esto así?

Porque estoy practicando en modo consola usando el 16x2, aunque ahora mismo el 16x1. Cuando lo domine partes por partes lo que deseo, como el booleano, el XXXXXX-- del brillo, y me falta el volumen del 0 que es mute hasta aumentar el sonido hasta el 7. Poco a poco lo estoy haciendo.

Cuando acabe con C#, adaptaré este código a un LCD real de 16x2 como puedes ver aquí.

Quiero aprender hacer menús para LCD pero primero que acabo antes, en PC. ;)


Saludos.
375  Programación / .NET (C#, VB.NET, ASP) / Re: Menús en modo consola en: 7 Febrero 2019, 21:39 pm
Buenas:

Hoy me volví loco de la cabeza. Entrego código incompleto, lo entrego como curiosidad. Lo intentaré acabarlo al 100 %.

Código
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Menu_consola_09_cs
  8. {
  9.    class Program
  10.    {
  11.        // Variables globales.
  12.        public static int luz = 6;
  13.        public const int BRILLO_MAX = 8;
  14.        public static bool radio = false;
  15.  
  16.        static void Main(string[] args)
  17.        {
  18.            // Título de la ventana.
  19.            Console.Title = "Menú de opciones";
  20.  
  21.            // Tamaño ventana consola.
  22.            // X anchura.
  23.            Console.WindowWidth = 16;
  24.  
  25.            // Y altura.
  26.            Console.WindowHeight = 2;
  27.  
  28.            // Oculto el cursor.
  29.            Console.CursorVisible = false;
  30.            ConsoleKey teclaInicial;
  31.            Console.BackgroundColor = ConsoleColor.Green;
  32.  
  33.            // Letras negras.
  34.            Console.ForegroundColor = ConsoleColor.Black;
  35.  
  36.            // Limpiar pantalla.
  37.            do
  38.            {
  39.                Console.Clear();
  40.                Console.WriteLine(DateTime.Now.ToString("dd/MM/yyyy"));
  41.                teclaInicial = Console.ReadKey(true).Key;
  42.                if(teclaInicial == ConsoleKey.Enter)
  43.                {
  44.                    menuPrincipal();
  45.                }
  46.            } while (teclaInicial != ConsoleKey.Escape); // SANTIAGOOOOO.
  47.  
  48.        }
  49.        public static void menuPrincipal()
  50.        {
  51.  
  52.            // Contador de teclas y navegador.
  53.            int opcion = 0;
  54.            bool salir = false;
  55.            // Capturar tecla para luego validar.
  56.            ConsoleKey tecla;
  57.  
  58.            do
  59.            {
  60.  
  61.                //******************************************************************
  62.                // Dibujo el menú.
  63.  
  64.                // Rellenar fondo verde.
  65.                Console.BackgroundColor = ConsoleColor.Green;
  66.  
  67.                // Letras negras.
  68.                Console.ForegroundColor = ConsoleColor.Black;
  69.  
  70.                // Limpiar pantalla.
  71.                Console.Clear();
  72.  
  73.                switch (opcion)
  74.                {
  75.                    case 0:
  76.                        Console.SetCursorPosition(0, 0);
  77.                        Console.Write("Language");
  78.                        break;
  79.                    case 1:
  80.                        Console.SetCursorPosition(0, 0);
  81.                        Console.WriteLine("Ajustar hora ->");
  82.                        break;
  83.                    case 2:
  84.                        Console.SetCursorPosition(0, 0);
  85.                        Console.WriteLine("Ajustar fecha ->");
  86.                        break;
  87.                    case 3:
  88.                        Console.SetCursorPosition(0, 0);
  89.                        Console.WriteLine("Brillo");
  90.                        break;
  91.                    case 4:
  92.                        Console.SetCursorPosition(0, 0);
  93.                        Console.WriteLine("Ver radio");
  94.                        break;
  95.                    case 5:
  96.                        Console.SetCursorPosition(0, 0);
  97.                        Console.WriteLine("Vol. avisos");
  98.                        break;
  99.                    case 6:
  100.                        Console.SetCursorPosition(0, 0);
  101.                        Console.WriteLine("Vol. teclas");
  102.                        break;
  103.                    case 7:
  104.                        Console.SetCursorPosition(0, 0);
  105.                        Console.WriteLine("Salir menú");
  106.                        break;
  107.                    default:
  108.                        Console.WriteLine("Fuera de rango.");
  109.                        break;
  110.                }
  111.  
  112.                // Fin de pintar el menú.
  113.                //******************************************************************
  114.  
  115.                // Leer tecla ingresada por el usuario.
  116.                tecla = Console.ReadKey(true).Key;
  117.  
  118.                // Validar el tipo de tecla.
  119.                if (tecla == ConsoleKey.Enter)
  120.                {
  121.                    switch (opcion)
  122.                    {
  123.                        case 3:
  124.                            brillo();
  125.                            break;
  126.                        case 4:
  127.                            radiazo();
  128.                            break;
  129.                        case 7:
  130.                            salir = true;
  131.                            break;
  132.                        default:
  133.                            break;
  134.                    }
  135.                }
  136.  
  137.                if (tecla == ConsoleKey.DownArrow)
  138.                {
  139.                    opcion += 1;
  140.                }
  141.  
  142.                if (tecla == ConsoleKey.UpArrow)
  143.                {
  144.                    opcion -= 1;
  145.                }
  146.  
  147.                // Si está en la última opción, salta a la primera.
  148.                if (opcion > 7)
  149.                {
  150.                    opcion = 0;
  151.                }
  152.  
  153.                // Si está en la primera posición, salta a la última.
  154.                if (opcion < 0)
  155.                {
  156.                    opcion = 7;
  157.                }
  158.  
  159.                // Uso la tecla escape como salida.
  160.            } while (salir==false);
  161.        }
  162.  
  163.        #region Brillo (3).
  164.        public static void brillo()
  165.        {
  166.            ConsoleKey teclaBrillo;
  167.            Console.Clear();
  168.            do
  169.            {
  170.  
  171.                Console.SetCursorPosition(0, 0);
  172.                Console.Write("Luz: ");
  173.  
  174.                for (int i = 0; i < luz; i++)
  175.                {
  176.                    Console.Write("X");
  177.                }
  178.  
  179.                for (int j = 0; j < (BRILLO_MAX - luz); j++)
  180.                {
  181.                    Console.Write("-");
  182.                }
  183.  
  184.                teclaBrillo = Console.ReadKey(true).Key;
  185.  
  186.                // ¿Se pulsó el cursor arriba?
  187.                if (teclaBrillo == ConsoleKey.UpArrow)
  188.                {
  189.                    //¿no llega al limite?
  190.                    if (luz < BRILLO_MAX)
  191.                    {
  192.                        // Incrementa 1.
  193.                        luz++;
  194.                    }
  195.                }
  196.  
  197.                if (teclaBrillo == ConsoleKey.DownArrow)
  198.                {
  199.                    if (luz > 0)
  200.                    {
  201.                        // Decremmenta 1.
  202.                        luz--;
  203.                    }
  204.                }
  205.  
  206.            } while (teclaBrillo != ConsoleKey.Enter);
  207.        }
  208.        #endregion
  209.  
  210.        #region Radio (4).
  211.        public static void radiazo()
  212.        {
  213.            ConsoleKey teclaRadio;
  214.            Console.Clear();
  215.            do
  216.            {
  217.                Console.SetCursorPosition(0, 0);
  218.                Console.Write("Radio: ");
  219.  
  220.  
  221.  
  222.                if (radio == true)
  223.                {
  224.                    Console.SetCursorPosition(7, 0);
  225.                    Console.Write("On ");
  226.                }
  227.  
  228.                else
  229.                {
  230.                    Console.SetCursorPosition(7, 0);
  231.                    Console.Write("Off");
  232.                }
  233.  
  234.                teclaRadio = Console.ReadKey(true).Key;
  235.  
  236.                if (teclaRadio == ConsoleKey.UpArrow)
  237.                {
  238.                    Console.SetCursorPosition(7, 0);
  239.                    Console.Write("On ");
  240.                    radio = true;
  241.                }
  242.  
  243.                if (teclaRadio == ConsoleKey.DownArrow)
  244.                {
  245.                    Console.SetCursorPosition(7, 0);
  246.                    Console.Write("Off");
  247.                    radio = false;
  248.                }
  249.  
  250.            } while (teclaRadio != ConsoleKey.Enter);
  251.        }
  252.        #endregion
  253.  
  254.    }
  255. }
  256.  
  257.  

Hay una parte en Ver Radio que no me sale. Si pulso la fecla del teclado arriba, me sale "Radio: On". Si sigo pulsado la fecla arriba otra vez, se queda en On, lo mismo hacia abajo, que se queda en Off.

¿Hay alguna manera de que si pulso la tecla flecha arriba todo el rato o abajo se cambie en On y Off?

El código es esta función.
Código
  1. public static void radiazo()
  2.        {
  3.            ConsoleKey teclaRadio;
  4.            Console.Clear();
  5.            do
  6.            {
  7.                Console.SetCursorPosition(0, 0);
  8.                Console.Write("Radio: ");
  9.  
  10.  
  11.  
  12.                if (radio == true)
  13.                {
  14.                    Console.SetCursorPosition(7, 0);
  15.                    Console.Write("On ");
  16.                }
  17.  
  18.                else
  19.                {
  20.                    Console.SetCursorPosition(7, 0);
  21.                    Console.Write("Off");
  22.                }
  23.  
  24.                teclaRadio = Console.ReadKey(true).Key;
  25.  
  26.                if (teclaRadio == ConsoleKey.UpArrow)
  27.                {
  28.                    Console.SetCursorPosition(7, 0);
  29.                    Console.Write("On ");
  30.                    radio = true;
  31.                }
  32.  
  33.                if (teclaRadio == ConsoleKey.DownArrow)
  34.                {
  35.                    Console.SetCursorPosition(7, 0);
  36.                    Console.Write("Off");
  37.                    radio = false;
  38.                }
  39.  
  40.            } while (teclaRadio != ConsoleKey.Enter);
  41.        }

Saludos
;)
376  Programación / .NET (C#, VB.NET, ASP) / Re: Menús en modo consola en: 7 Febrero 2019, 06:16 am
Gracias, estoy en ello. ;)

Lo dejo más claro, luego hago esquema de cada submenú.



Antes usé solo if. Ahora hice lo mismo pero con Switch. No se cual es el más indicado para hacer el submenú.

Código
  1.                switch (contador)
  2.                {
  3.                    case 0:
  4.                        Console.SetCursorPosition(0, 0);
  5.                        Console.Write("FECHA");
  6.  
  7.  
  8.                        break;
  9.                    case 1:
  10.                        Console.SetCursorPosition(0, 0);
  11.                        Console.Write("MENú &#9650;&#9660;");
  12.                        break;
  13.                    case 2:
  14.                        Console.SetCursorPosition(0, 0);
  15.                        Console.WriteLine("1.   UNO");
  16.                        break;
  17.                    case 3:
  18.                        Console.SetCursorPosition(0, 0);
  19.                        Console.WriteLine("2.   DOS");
  20.                        break;
  21.                    case 4:
  22.                        Console.SetCursorPosition(0, 0);
  23.                        Console.WriteLine("3.   TRES");
  24.                        break;
  25.                    case 5:
  26.                        Console.SetCursorPosition(0, 0);
  27.                        Console.WriteLine("4.  CUATRO");
  28.                        break;
  29.                    case 6:
  30.                        Console.SetCursorPosition(0, 0);
  31.                        Console.WriteLine("5. ESC = SALIR");
  32.                        break;
  33.                    default:
  34.                        Console.WriteLine("Fuera de rango.");
  35.                        break;
  36.                }

Salu2.
377  Programación / .NET (C#, VB.NET, ASP) / Re: Menús en modo consola en: 5 Febrero 2019, 22:47 pm
Buenas:

Me ha servido el truco para el código de arriba. Ahora haciendo un menú de solo usar 16x2 de resolusión. Hago este código base.

En este caso lo que hace es seleccionar opciones en el menú, pero no hace nada más. Las opciones en el menú se llama.

Menú ▲▼

1. UNO
2. DOS
3. TRES
4. CUATRO
5. ESC - SALIR

Por ejemplo, seleccionamos el 3. TRES. Pulse Enter y justo una línea de abajo dice:

3. TRES ▲▼

Después de pulsar Enter, se sustituye el texto 3. TRES ▲▼ por otro abajo.

Alum. ●●●●●●○○

En el cual podemos hacer cosas, estando ya en la subopción indicado arriba. Si pulsamos Enter, de Alum. ●●●●●●○○ vuelve al menú principal en este caso donde estaba, llamdo 3. TRES ▲▼. Si etás todavía en Alum. ●●●●●●○○, puedes pulsar la teclas arriba y abajo para mover las opciones indicadas de esta manera mostrada abajo.

Son 8 puntos. Lo que hace es alumbrar el brillo de una luz, el brillo más débil es de esta manera. Alum. ○○○○○○○○. El brillo máximo es de otra manera, Alum. ●●●●●●●●. Con las flechas del teclado arriba y abajo, seleccionamos un punto, de 1 hasta 8. La mitad sería así: Alum. ●●●●○○○○. Pulsa enter, guarda la configuración en una variable para que la recuerde y sale al menú principal.

Espero que se entienda lo que quiero hacer.

Dejo el código base, solo selecciona opciones pero al pulsar Enter tiene que hacer al menos el 3. TRES.

Código consola C#:
Código
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Menu_consola_09_cs
  8. {
  9.    class Program
  10.    {
  11.        static void Main(string[] args)
  12.        {
  13.            // Título de la ventana.
  14.            Console.Title = "Menú de opciones";
  15.  
  16.            // Tamaño ventana consola.
  17.            // X anchura.
  18.            Console.WindowWidth = 16;
  19.  
  20.            // Y altura.
  21.            Console.WindowHeight = 2;
  22.  
  23.            // Oculto el cursor.
  24.            Console.CursorVisible = false;
  25.  
  26.            // Contador de teclas y navegador.
  27.            int contador = 0;
  28.  
  29.            // Capturar tecla para luego validar.
  30.            ConsoleKey tecla;
  31.  
  32.            do
  33.            {
  34.  
  35.                //******************************************************************
  36.                // Dibujo el menú.
  37.  
  38.                // Rellenar fondo verde.
  39.                Console.BackgroundColor = ConsoleColor.Green;
  40.  
  41.                // Letras negras.
  42.                Console.ForegroundColor = ConsoleColor.Black;
  43.  
  44.                // Limpiar pantalla.
  45.                Console.Clear();
  46.  
  47.                if (contador == 0)
  48.                {
  49.                    Console.SetCursorPosition(0, 0);
  50.                    Console.Write("MENú &#9650;&#9660;");
  51.                }
  52.  
  53.                if (contador == 1)
  54.                {
  55.                    Console.SetCursorPosition(0, 0);
  56.                    Console.WriteLine("1.   UNO");
  57.                }
  58.  
  59.                if (contador == 2)
  60.                {
  61.                    Console.SetCursorPosition(0, 0);
  62.                    Console.WriteLine("2.   DOS");
  63.                }
  64.  
  65.                if (contador == 3)
  66.                {
  67.                    Console.SetCursorPosition(0, 0);
  68.                    Console.WriteLine("3.   TRES");
  69.                }
  70.  
  71.                if (contador == 4)
  72.                {
  73.                    Console.SetCursorPosition(0, 0);
  74.                    Console.WriteLine("4.  CUATRO");
  75.                }
  76.  
  77.                if (contador == 5)
  78.                {
  79.                    Console.SetCursorPosition(0, 0);
  80.                    Console.WriteLine("5. ESC = SALIR");
  81.                }
  82.  
  83.                // Fin de pintar el menú.
  84.                //******************************************************************
  85.  
  86.                // Leer tecla ingresada por el usuario.
  87.                tecla = Console.ReadKey(true).Key;
  88.  
  89.                //validar el tipo de tecla
  90.                if (tecla == ConsoleKey.DownArrow)
  91.                {
  92.                    contador += 1;
  93.                }
  94.  
  95.                if (tecla == ConsoleKey.UpArrow)
  96.                {
  97.                    contador -= 1;
  98.                }
  99.  
  100.                // Si está en la última opción, salta a la primera.
  101.                if (contador > 5)
  102.                {
  103.                    contador = 0;
  104.                }
  105.  
  106.                // Si está en la primera posición, salta a la última.
  107.                if (contador < 0)
  108.                {
  109.                    contador = 5;
  110.                }
  111.  
  112.                // Uso la tecla escape como salida.
  113.            } while (tecla != ConsoleKey.Escape);
  114.        }
  115.    }
  116. }


Captura:


Una cosa a tener en cuenta. En vez de aparecer

MENú ▲▼

En pantalla, lo primero que debe aparecer en el programa en HOLA. Si pulsas Enter, entonces ya aparece el Menú. Si pulsa salir apareces en HOLA. Luego hacer lo demás con el 3. TRES indicado arriba.

¿Alguna ayuda?

Saludos.
378  Programación / .NET (C#, VB.NET, ASP) / Re: Menús en modo consola en: 4 Febrero 2019, 21:17 pm
Muchas gracias. En Windows 10, "Mapa de carácteres" saqué todo. ;)
379  Programación / .NET (C#, VB.NET, ASP) / Menús en modo consola en: 3 Febrero 2019, 08:54 am
Hola:

Estoy usando la consola de C#, me dio ahora por el retro.



Hice este menú de opciones, pero no hace nada. Por ahora solo selecciona las opciones.

Lo que no se es como entrar en otra opción dentro de ella en DOS al pulsar Enter.

Estoy en el submenú que sale un menaje que diga. Estoy dentro de la opción DOS. Con capacidad de pulsar Escape y vuelva al menú principal.

Lo que he hecho hasta ahora es solo esto.

Código
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Menu_consola_02_cs
  8. {
  9.    class Program
  10.    {
  11.        static void Main(string[] args)
  12.        {
  13.            // Título de la ventana.
  14.            Console.Title = "Menú de opciones";
  15.  
  16.            // Tamaño ventana consola.
  17.            Console.WindowWidth = 20; // X anchura.
  18.            Console.WindowHeight = 8; // Y altura.
  19.  
  20.            // Cursor invisible.
  21.            Console.CursorVisible = false;
  22.  
  23.            //Contador de teclas y navegador
  24.            int contador = 0;
  25.            //tomar la tecla para validar luego
  26.            ConsoleKey tecla;
  27.            //escondo el cursor
  28.            Console.CursorVisible = false;
  29.            do
  30.            {
  31.                //******************************************************************
  32.                //Pinto el menú
  33.                Console.Clear();
  34.                Console.Write("&#9556;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9559;\n");
  35.                if (contador == 0)
  36.                {
  37.                    Console.BackgroundColor = ConsoleColor.White;
  38.                    Console.ForegroundColor = ConsoleColor.Black;
  39.                    Console.Write("&#9553;   UNO            &#9553;\n");
  40.                    Console.BackgroundColor = ConsoleColor.Black;
  41.                    Console.ForegroundColor = ConsoleColor.White;
  42.                }
  43.                else
  44.                {
  45.                    Console.BackgroundColor = ConsoleColor.Black;
  46.                    Console.ForegroundColor = ConsoleColor.White;
  47.                    Console.Write("&#9553;   UNO            &#9553;\n");
  48.                }
  49.                if (contador == 1)
  50.                {
  51.                    Console.BackgroundColor = ConsoleColor.White;
  52.                    Console.ForegroundColor = ConsoleColor.Black;
  53.                    Console.Write("&#9553;   DOS            &#9553;\n");
  54.                    Console.BackgroundColor = ConsoleColor.Black;
  55.                    Console.ForegroundColor = ConsoleColor.White;
  56.                }
  57.                else
  58.                {
  59.                    Console.BackgroundColor = ConsoleColor.Black;
  60.                    Console.ForegroundColor = ConsoleColor.White;
  61.                    Console.Write("&#9553;   DOS            &#9553;\n");
  62.                }
  63.                if (contador == 2)
  64.                {
  65.                    Console.BackgroundColor = ConsoleColor.White;
  66.                    Console.ForegroundColor = ConsoleColor.Black;
  67.                    Console.Write("&#9553;   TRES           &#9553;\n");
  68.                    Console.BackgroundColor = ConsoleColor.Black;
  69.                    Console.ForegroundColor = ConsoleColor.White;
  70.                }
  71.                else
  72.                {
  73.                    Console.BackgroundColor = ConsoleColor.Black;
  74.                    Console.ForegroundColor = ConsoleColor.White;
  75.                    Console.Write("&#9553;   TRES           &#9553;\n");
  76.                }
  77.                if (contador == 3)
  78.                {
  79.                    Console.BackgroundColor = ConsoleColor.White;
  80.                    Console.ForegroundColor = ConsoleColor.Black;
  81.                    Console.Write("&#9553;   CUATRO         &#9553;\n");
  82.                    Console.BackgroundColor = ConsoleColor.Black;
  83.                    Console.ForegroundColor = ConsoleColor.White;
  84.                }
  85.                else
  86.                {
  87.                    Console.BackgroundColor = ConsoleColor.Black;
  88.                    Console.ForegroundColor = ConsoleColor.White;
  89.                    Console.Write("&#9553;   CUATRO         &#9553;\n");
  90.                }
  91.                if (contador == 4)
  92.                {
  93.                    Console.BackgroundColor = ConsoleColor.White;
  94.                    Console.ForegroundColor = ConsoleColor.Black;
  95.                    Console.Write("&#9553;   ESC = SALIR    &#9553;\n");
  96.                    Console.BackgroundColor = ConsoleColor.Black;
  97.                    Console.ForegroundColor = ConsoleColor.White;
  98.                }
  99.                else
  100.                {
  101.                    Console.BackgroundColor = ConsoleColor.Black;
  102.                    Console.ForegroundColor = ConsoleColor.White;
  103.                    Console.Write("&#9553;   ESC = SALIR    &#9553;\n");
  104.                }
  105.                Console.Write("&#9562;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9565;\n");
  106.                //Fin de pintar el menú
  107.                //******************************************************************
  108.  
  109.                //leer tecla ingresada por el usuario
  110.                tecla = Console.ReadKey(true).Key;
  111.  
  112.                //validar el tipo de tecla
  113.                if (tecla == ConsoleKey.DownArrow)
  114.                {
  115.                    contador += 1;
  116.                }
  117.                if (tecla == ConsoleKey.UpArrow)
  118.                {
  119.                    contador -= 1;
  120.                }
  121.                //valido que el conteo de teclas no supere el rango establecido por los Ifs de más arriba
  122.                if (contador > 4)
  123.                {
  124.                    contador = 4;
  125.                }
  126.                if (contador < 0)
  127.                {
  128.                    contador = 0;
  129.                }
  130.                //uso la tecla escape como salida
  131.            } while (tecla != ConsoleKey.Escape);
  132.        }
  133.    }
  134. }
  135.  

No logro cuajarlo como si se ha hecho por aquí en este otro ejemplo de abajo.

Código
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Menu_y_opciones_consola_02_cs
  8. {
  9.    class Program
  10.    {
  11.        static void Main(string[] args)
  12.        {
  13.            // Título de la ventana.
  14.            Console.Title = "Menú y opciones C# 2017";
  15.  
  16.            // Tamaño ventana consola.
  17.            Console.WindowWidth = 30; // X. Ancho.
  18.            Console.WindowHeight = 17; // Y. Alto.
  19.  
  20.            // Cursor invisible.
  21.            Console.CursorVisible = false;
  22.  
  23.            // Cuadro doble borde ventana.
  24.            Menu_y_opciones_consola_02_cs.Cuadro.cuadrado();
  25.  
  26.            // Posición del mansaje en la ventana.
  27.            Console.SetCursorPosition(2, 2);
  28.            Console.WriteLine("Elija una opción:");
  29.            Console.WriteLine("");
  30.            Console.SetCursorPosition(2, 4);
  31.            Console.WriteLine("1 - Opción A.");
  32.            Console.SetCursorPosition(2, 5);
  33.            Console.WriteLine("2 - Opción B.");
  34.            Console.SetCursorPosition(2, 6);
  35.            Console.WriteLine("3 - Opción C.");
  36.            Console.SetCursorPosition(2, 7);
  37.            Console.WriteLine("Escape - Salir.");
  38.            Console.SetCursorPosition(2, 8);
  39.            Console.Write("===============");
  40.  
  41.            ConsoleKey key;
  42.  
  43.            do
  44.            {
  45.                // Cursor invisible
  46.                Console.CursorVisible = false;
  47.  
  48.                // Lee cualquier tecla.
  49.                key = Console.ReadKey(true).Key;
  50.  
  51.                // Variable de mensaje vacío.
  52.                string mensaje = string.Empty;
  53.  
  54.                // Leer tecla selecconada por el usuario.
  55.                switch (key)
  56.                {
  57.                    case ConsoleKey.D1: // Tecla principal 1.
  58.                    case ConsoleKey.NumPad1: // Tecla extendida 1.
  59.                        Console.SetCursorPosition(2, 10);
  60.                        mensaje = "OPCIÓN A."; // Mostrar mensaje en pantalla.
  61.                        break;
  62.  
  63.                    case ConsoleKey.D2:
  64.                    case ConsoleKey.NumPad2:
  65.                        mensaje = "OPCIÓN B.";
  66.                        break;
  67.                    case ConsoleKey.D3:
  68.                    case ConsoleKey.NumPad3:
  69.                        mensaje = "OPCIÓN C.";
  70.                        break;
  71.                }
  72.  
  73.                // Posición de los mensajes.
  74.                Console.SetCursorPosition(2, 10);
  75.                Console.Write("             "); // 13 espacios.
  76.                Console.SetCursorPosition(2, 10);
  77.                Console.Write(mensaje);
  78.  
  79.            }
  80.  
  81.            // Salir de la plicación al pulsar la tecla Escape o número 4.
  82.            while (key != ConsoleKey.Escape);
  83.  
  84.  
  85.        }
  86.    }
  87. }
  88.  

Saludos.
380  Programación / .NET (C#, VB.NET, ASP) / Cambiar opción de una Web desde C# en: 21 Enero 2019, 06:44 am
Hola gente del foro:

Que pasen buen comienzo del 2.019. ;)

Quiero hacer con Windows Form cambiar de opción de una Web de gmail. En este caso pongo el enlace.

https://myaccount.google.com/lesssecureapps

Desde la Web puedo poner o No.

¿Existe esta posibilidad controlar esa opción desde C#?

Por supuesto que tendrás que poner en C# los datos la cuenta gmail, eso seguro.

Saludos.
Páginas: 1 ... 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 [38] 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 ... 255
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines