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


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Mensajes
Páginas: 1 2 3 [4] 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ... 261
31  Programación / .NET (C#, VB.NET, ASP) / Cambiar resolución en pantalla en: 7 Agosto 2024, 00:38 am
Hola:

Tengo esta resolución en pantalla de 20x5.


Quiero hacerlo como muestra abajo, lo logro pulsando la tecla Control y muevo la rueda del ratón. Como puedes ver, cambia el tamaño de la ventana más las letras de su contenido de la ventana.


Si lo programo, me muestra la resolución igual pero las letras pequeñas como indica abajo.


El código base es este en C# consola.
Código
  1. using System;
  2.  
  3. namespace Resolucion_y_tamaño_ventana_Consola_01
  4. {
  5.    internal class Program
  6.    {
  7.        static void Main(string[] args)
  8.        {
  9.            // Título de la ventana.
  10.            Console.Title = "Ventana C#";
  11.  
  12.            // Tamaño de la ventana, x, y o, ancho y alto.
  13.            const byte ancho = 77;
  14.            const byte alto = 25;
  15.            Console.SetWindowSize(ancho, alto);
  16.  
  17.            // Quitar scroll laterales, derecho y abajo.
  18.            Console.SetBufferSize(ancho, alto);
  19.  
  20.            // Cursor invisible.
  21.            Console.CursorVisible = false;
  22.  
  23.            Console.Write("Resolución 20 x 4.");
  24.  
  25.            // Pulse cualquier tecla para salir.
  26.            Console.ReadKey();
  27.        }
  28.    }
  29. }

La pregunta.

¿Se puede programar como en la segunda imagen?
Es decir, a parte de subir la resolución de pantalla que eso si se puede, aumentar el tamaño de las letras de la consola.

Muchas gracias por leer hasta aquí. ;)
32  Programación / .NET (C#, VB.NET, ASP) / Re: Intentar diseñar bien en: 6 Agosto 2024, 22:32 pm
Quiero mejorar un poco el código. Que muestre Salir como en otra pantalla. Por ejemplo.



Con la feclas del teclado terminaré por llegar en la otra pantalla indicada abajo.


Desde que pulse SALIR, el programa se termina.
33  Programación / .NET (C#, VB.NET, ASP) / Re: Intentar diseñar bien en: 2 Agosto 2024, 07:18 am
Gracias compañeros.

Ya me di cuenta, si lo quitas, aparece al lado para bajar y subir las líneas en la derecha como una Web, si lo pones, no aparece.
34  Programación / .NET (C#, VB.NET, ASP) / Re: Intentar diseñar bien en: 2 Agosto 2024, 01:16 am
Por cierto, este código.

Código
  1.      Console.SetWindowSize(44, 5);
  2.      Console.SetBufferSize(44, 5);

Sobre todo este:
Código
  1. Console.SetBufferSize(44, 5);

¿Qué utilidad tiene?

Lo incluya en el código o no, no veo ningún efecto o utilidad.

35  Programación / .NET (C#, VB.NET, ASP) / Re: Intentar diseñar bien en: 31 Julio 2024, 00:45 am
Muy bueno, sí señor.  ;-) ;-) ;-) ;-) ;-)

Muchas gracias mi muy distinguido amigo.  ;D
36  Programación / .NET (C#, VB.NET, ASP) / Re: Intentar diseñar bien en: 30 Julio 2024, 04:26 am
Me funciona tu código, se pone la x justo cuando paso la >, no lo quiero así, sino, poder mover el > y solo cuando pulse enter en una opción indicada, aparece la X o no.

Si hacer una flecha abajo más, se pone otra opción que se llama Salir.

Gracias.
37  Programación / .NET (C#, VB.NET, ASP) / Intentar diseñar bien en: 30 Julio 2024, 01:11 am
Buenas:

Como se aprecia esta imagen, está marcada la primera opción con una x.


Quiero hacer que nada más ejecutar el programa, se refleje esa x, ya que está simulando un radioButton en modo consola.

Si pulsas cualquiera de las tres opciones una x, las demás si tiene alguna, se quita, solo queda una sola seleccionada.

Al pulsar Enter por ejemplo > (x) Voltios, luego se me borra porque vuelve otra vez e redibujado principal.

Dejo aquí el código porque no se en que fallo. Lenguaje C#.
Código
  1. //      ** P1 **
  2. // > (x) %
  3. //   ( ) Voltios
  4. //   ( ) Decimal 0-1023
  5.  
  6. //      ** P1 **
  7. // > ATRÁS
  8. //   GUARDAR
  9.  
  10. using System;
  11.  
  12. namespace LCD_Menu_con_submenus_Consola_03.Ventana02
  13. {
  14.    public class _0_P1
  15.    {
  16.        #region Variables.
  17.        // Contador de teclas y navegador.
  18.        static sbyte indiceSeleccionado = 0;                   // Índice seleccionado de cada opción del menú.
  19.        static bool salir = false;                             // Para salir del menú principal al INICIO.
  20.        const sbyte SELECCION_OPCIONES_TOTALES = 3;            // Total de opciones para seleccionar y fija.
  21.  
  22.        public static readonly string[] TEXTO = new string[]
  23.        {
  24.            "      ** P1 **      ", // Posición 0.
  25.            "  ( ) %             ", // 1
  26.            "  ( ) Voltios       ", // 2
  27.            "  ( ) Decimal 0-1023", // 3
  28.            "  SALIR             ", // 4
  29.            "                    ", // 5
  30.            ">",                    // 6
  31.            "x"                     // 7
  32.        };
  33.        #endregion
  34.        public static void P1_Principal()
  35.        {
  36.            // Capturar tecla para luego validar.
  37.            ConsoleKey tecla;
  38.  
  39.            // Limpiar pantalla.
  40.            Console.Clear();
  41.  
  42.            do
  43.            {
  44.                //******************************************************************
  45.                // Dibujo el menú principal.
  46.  
  47.                switch (indiceSeleccionado)
  48.                {
  49.                    case 0:
  50.                        Console.SetCursorPosition(0, 0);
  51.                        Console.Write(TEXTO[0]);          //       ** P1 **
  52.                        Console.SetCursorPosition(0, 1);
  53.                        Console.Write(TEXTO[1]);          // > ( ) %              
  54.                        Console.SetCursorPosition(0, 1);
  55.                        Console.Write(TEXTO[6]);          // >
  56.                        Console.SetCursorPosition(0, 2);
  57.                        Console.Write(TEXTO[2]);          // ( ) Voltios
  58.                        Console.SetCursorPosition(0, 3);
  59.                        Console.Write(TEXTO[3]);          // ( ) Decimal 0-1023
  60.                        break;
  61.                    case 1:
  62.                        Console.SetCursorPosition(0, 0);
  63.                        Console.Write(TEXTO[0]);          //       ** P1 **
  64.                        Console.SetCursorPosition(0, 1);
  65.                        Console.Write(TEXTO[1]);          // ( ) %              
  66.                        Console.SetCursorPosition(0, 2);
  67.                        Console.Write(TEXTO[2]);          // > ( ) Voltios
  68.                        Console.SetCursorPosition(0, 2);
  69.                        Console.Write(TEXTO[6]);          // >
  70.                        Console.SetCursorPosition(0, 3);
  71.                        Console.Write(TEXTO[3]);          // ( ) Decimal 0-1023
  72.                        break;
  73.                    case 2:
  74.                        Console.SetCursorPosition(0, 0);
  75.                        Console.Write(TEXTO[0]);          //       ** P1 **
  76.                        Console.SetCursorPosition(0, 1);
  77.                        Console.Write(TEXTO[1]);          //  ( ) %              
  78.                        Console.SetCursorPosition(0, 2);
  79.                        Console.Write(TEXTO[2]);          //  ( ) Voltios
  80.                        Console.SetCursorPosition(0, 3);
  81.                        Console.Write(TEXTO[3]);          // > ( ) Decimal 0-1023
  82.                        Console.SetCursorPosition(0, 3);
  83.                        Console.Write(TEXTO[6]);          // >
  84.                        break;
  85.  
  86.                    case 3:
  87.                        Console.SetCursorPosition(0, 0);
  88.                        Console.Write(TEXTO[0]);          //       ** P1 **
  89.                        Console.SetCursorPosition(0, 1);
  90.                        Console.Write(TEXTO[4]);          // > SALIR              
  91.                        Console.SetCursorPosition(0, 1);
  92.                        Console.Write(TEXTO[6]);          // >
  93.                        Console.SetCursorPosition(0, 2);
  94.                        Console.Write(TEXTO[5]);          //
  95.                        Console.SetCursorPosition(0, 3);
  96.                        Console.Write(TEXTO[5]);          //
  97.                        break;
  98.  
  99.                    default:
  100.                        Console.Write("Fuera de rango.     ");
  101.                        break;
  102.                }
  103.  
  104.                // Fin de pintar el menú principal.
  105.                //******************************************************************
  106.  
  107.                // Leer tecla ingresada por el usuario.
  108.                tecla = Console.ReadKey(true).Key;
  109.  
  110.                // Validar el tipo de tecla.
  111.                if (tecla == ConsoleKey.Enter)
  112.                {
  113.                    switch (indiceSeleccionado)
  114.                    {
  115.                        case 0:
  116.                            Console.SetCursorPosition(3, 1);
  117.                            Console.Write(TEXTO[7]);          // x
  118.                            break;
  119.  
  120.                        case 1:
  121.                            Console.SetCursorPosition(3, 2);
  122.                            Console.Write(TEXTO[7]);          // x
  123.                            break;
  124.  
  125.                        case 2:
  126.                            Console.SetCursorPosition(3, 3);
  127.                            Console.Write(TEXTO[7]);          // x
  128.                            break;
  129.  
  130.                        case 3:
  131.                            salir = true; // Salir
  132.                            break;
  133.  
  134.                        default:
  135.                            Console.Write("Fuera de rango.     ");
  136.                            break;
  137.                    }
  138.                }
  139.  
  140.                // ¿Has pulsado tecla flecha Abajo?
  141.                else if (tecla == ConsoleKey.DownArrow)
  142.                {
  143.                    indiceSeleccionado++;
  144.                }
  145.  
  146.                // Entonces si pulsas tecla flecha Arriba.
  147.                else if (tecla == ConsoleKey.UpArrow)
  148.                {
  149.                    indiceSeleccionado--;
  150.                }
  151.  
  152.                // Si está en la última opción, salta a la primera.
  153.                if (indiceSeleccionado > SELECCION_OPCIONES_TOTALES)
  154.                {
  155.                    indiceSeleccionado = 0;
  156.                }
  157.  
  158.                // Si está en la primera posición, salta a la última.
  159.                if (indiceSeleccionado < 0)
  160.                {
  161.                    indiceSeleccionado = SELECCION_OPCIONES_TOTALES;
  162.                }
  163.  
  164.                // Uso la tecla escape como salida.
  165.            } while (!salir);
  166.        }
  167.    }
  168. }

Saludos.
38  Programación / .NET (C#, VB.NET, ASP) / Re: Tiene que haber otra forma de hacer este código. en: 30 Julio 2024, 01:07 am
Entendido.  ;)
39  Programación / .NET (C#, VB.NET, ASP) / Re: Tiene que haber otra forma de hacer este código. en: 28 Julio 2024, 08:04 am
Mira lo que dice aquí.

https://learn.microsoft.com/es-es/dotnet/api/system.console.readkey?view=net-8.0

Hay código de ejemplo que pone esto.

Código
  1. while (Console.ReadKey().Key != ConsoleKey.Enter) {}

Que al final si se usa.
40  Programación / .NET (C#, VB.NET, ASP) / Re: Tiene que haber otra forma de hacer este código. en: 28 Julio 2024, 02:18 am
De eso se trata, que al menos no se satura todo el rato con un bucle. Se trata que espere que pulse Enter y sales de ahí.

En cuando al Console.Readkey(); Espera que pulse cualquier tecla y sigues. Es como el PAUSE del archivo bat o cmd.
Páginas: 1 2 3 [4] 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ... 261
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines