lunes, 26 de abril de 2010

Ejemplo de uso del objecto Console

Module Module1

 

    Sub Main()

 

        Console.WriteLine("Bienvenidos a las aplicaciones de consolas en Visual Studio 2005")

        Console.WriteLine()

 

        ' Title

        Console.WriteLine("El titulo por defecto de la consola es la ruta del ejecutable")

        Console.Write("Ingresá un nuevo título:")

        Console.Title = Console.ReadLine

        Console.WriteLine()

        Console.WriteLine()

 

 

        ' Size

        Console.WriteLine("Ahora podés cambiar el tamaño de la ventana")

        Console.WriteLine()

 

        Dim newHeight As Integer

        Dim newWidth As Integer

 

        Console.Write("Ingresá el alto en Pixels(40 es un buen valor):")

        Try

            newHeight = Int32.Parse(Console.ReadLine)

        Catch ex As Exception

            Console.WriteLine("Has ingresado un valor inválido, utilizaremos el 40 en lugar de lo que pusiste")

            newHeight = 40

        End Try

 

 

        Console.WriteLine()

        Console.Write("Ingrese el ancho en píxeles (100 es un buen número):")

        Try

            newWidth = Int32.Parse(Console.ReadLine)

        Catch ex As Exception

            Console.WriteLine("Has ingresado un valor inválido, utilizaremos el 100 en lugar de lo que pusiste")

            newWidth = 100

        End Try

 

 

        If newHeight > Console.LargestWindowHeight Then

            newHeight = Console.LargestWindowHeight

            Console.WriteLine("El alto es mayor a lo permitido, lo pondrémos en el valor maximo posible")

        End If

 

        If newWidth > Console.LargestWindowWidth Then

            newWidth = Console.LargestWindowWidth

            Console.WriteLine("El ancho es mayor a lo permitido, lo pondrémos en el valor maximo posible")

        End If

 

        Console.WindowHeight = newHeight

        Console.WindowWidth = newWidth

        Console.Write("El nuevo tamaño de la ventana es: " + Console.WindowHeight.ToString() + " x " + Console.WindowWidth.ToString())

        Console.WriteLine()

        Console.WriteLine("Presione Enter para continuar")

        Console.ReadLine()

        Console.Clear()

 

 

        ' Color

        Console.WriteLine("Tambien puedes cambiar los colores de fondo y de letras, utilizando los siguientes valores:")

        Console.WriteLine()

 

        For Each colorName As String In System.Enum.GetNames(GetType(ConsoleColor))

            Console.Write(colorName + ", ")

        Next

 

        Console.WriteLine()

 

 

        Console.Write("Ingresá el nuevo color de fondo:")

        Try

            Dim newBackgroundColor As String = Console.ReadLine

            Console.BackgroundColor = CType(System.Enum.Parse(GetType(ConsoleColor), newBackgroundColor, True), ConsoleColor)

        Catch ex As Exception

            Console.WriteLine("Has ingresado un valor incorrecto, pondremos el verde en tu lugar")

            Console.BackgroundColor = ConsoleColor.Green

        End Try

 

 

        Console.Write("Ingresa el color de texto:")

        Try

            Dim newForegroundColor As String = Console.ReadLine

            Console.ForegroundColor = CType(System.Enum.Parse(GetType(ConsoleColor), newForegroundColor, True), ConsoleColor)

        Catch ex As Exception

            Console.WriteLine("Has ingresado un valor incorrecto, pondremos el amarillo por vos")

            Console.ForegroundColor = ConsoleColor.Yellow

            Console.WriteLine("Presione Enter para continuar")

 

            Console.ReadLine()

        End Try

 

 

        Console.Clear()

        Console.WriteLine("Ahora puedes ver los cambios aplicados")

        Console.WriteLine()

 

 

        Console.WriteLine("Presione Enter para continuar")

        Console.ReadLine()

        Console.BackgroundColor = ConsoleColor.Black

        Console.ForegroundColor = ConsoleColor.White

        Console.Clear()

 

 

        ' Buffer

        Console.WriteLine("Tambien puedes cambiar el tamaño del buffer de la ventana")

        Console.WriteLine("el valor del buffer no puede ser menor al ancho de la ventana")

 

        Dim newBufferHeight As Integer

        Dim newBufferWidth As Integer

 

        Console.Write("Entre el nuevo alto del buffer: ")

        Try

            newBufferHeight = Int16.Parse(Console.ReadLine)

        Catch ex As Exception

            Console.WriteLine("Has ingresado un valor incorrecto, utilizaremos el 50")

            newBufferHeight = 50

        End Try

 

 

        Console.Write("Entre el nuevo valor del ancho del buffer: ")

        Try

            newBufferWidth = Int16.Parse(Console.ReadLine)

        Catch ex As Exception

            Console.WriteLine("Has ingresado un valor incorrecto, utilizaremos el 120")

            newBufferWidth = 120

        End Try

 

        If newBufferWidth < Console.WindowWidth Then

            newBufferWidth = Console.WindowWidth

        End If

 

        If newBufferHeight < Console.WindowHeight Then

            newBufferHeight = Console.WindowHeight

        End If

 

        Console.SetBufferSize(newBufferWidth, newBufferHeight)

        Console.Write("El nuevo valor del Buffer es: " + Console.BufferWidth.ToString() + " x " + Console.BufferHeight.ToString())

        Console.WriteLine()

        Console.WriteLine("Presione Enter para continuar")

        Console.ReadLine()

        Console.Clear()

 

 

        Console.WindowWidth = 120

        Console.WindowHeight = 40

        Console.BufferWidth = 120

        Console.BufferHeight = 40

        Console.WriteLine("@@@@@@@@@@")

        Console.WriteLine("@@@@@@@@@@")

        Console.WriteLine("@@@@@@@@@@")

        Console.WriteLine("@@@@@@@@@@")

        Console.WriteLine("@@@@@@@@@@")

        Console.WriteLine("También puedes mover partes del buffer")

        Console.WriteLine("El area es una matriz de 10X5")

        Console.WriteLine("Lo moveremos desde el margen superior izquierdo, al margen inferior derecho")

        Console.WriteLine()

        Console.WriteLine("Presione Enter para continuar")

        Console.ReadLine()

 

 

        Console.MoveBufferArea(0, 0, 10, 5, Console.BufferWidth - 10, Console.BufferHeight - 5)

        Console.WriteLine()

        Console.WriteLine("Presione Enter para continuar")

        Console.ReadLine()

        Console.Clear()

 

 

        ' Cursor

        Console.SetWindowSize(120, 40)

        Console.WriteLine("Tambien podemos cambiar la ubicacion y visibilidad del cursor")

        Console.WriteLine()

        Console.WriteLine("El comienzo de la linea es: a la izquierda = " + Console.CursorLeft.ToString() + " Superior = " + Console.CursorTop.ToString())

        Console.WriteLine()

        Console.WriteLine("Presione enter para mover el cursor en Izquierda = 20, Superior = 20")

        Console.ReadLine()

        Console.CursorLeft = 20

        Console.CursorTop = 20

        Console.Write("El comienzo de la línea a la izquierda es = " + Console.CursorLeft.ToString() + " y superior = " + Console.CursorTop.ToString())

        Console.WriteLine()

        Console.WriteLine()

        Console.WriteLine("Presione Enter para continuar")

        Console.ReadLine()

        Console.Clear()

        Console.WriteLine("Ajustar el tamaño y la visibilidad del cursor")

        Console.WriteLine()

        Console.WriteLine("El nuevo tamaño del cursor es = " + Console.CursorSize.ToString())

        Console.WriteLine()

        Console.Write("Ingrese el nuevo tamaño para el cursor: ")

 

        Dim newCursorSize As Integer

 

        Try

            newCursorSize = Int32.Parse(Console.ReadLine)

        Catch ex As Exception

            Console.WriteLine("Has ingresado un valor incorrecto, utilizaremos el 50")

            newCursorSize = 50

        End Try

 

        If newCursorSize <= 0 Or newCursorSize > 100 Then

            Console.WriteLine("Has ingresado un valor incorrecto, debe estar entre 1 y 100. utilizaremos el 50")

            newCursorSize = 50

        End If

 

        Console.WriteLine()

        Console.WriteLine("Presione Enter para continuar")

        Console.ReadLine()

        Console.Clear()

 

        Console.CursorSize = newCursorSize

        Console.WriteLine()

        Console.WriteLine("El nuevo tamaño del cursor es = " + Console.CursorSize.ToString())

 

        Console.WriteLine()

        Console.WriteLine("Presione Enter para continuar")

        Console.ReadLine()

        Console.Clear()

 

        Console.WriteLine("El cursor también puede ser invisible")

        Console.CursorVisible = False

        Console.WriteLine()

        Console.WriteLine("Presione Enter para continuar")

        Console.ReadLine()

 

        Console.WriteLine("Y nuevamente visible")

        Console.CursorVisible = True

 

        Console.WriteLine()

        Console.WriteLine("Presione Enter para continuar")

        Console.ReadLine()

        Console.Clear()

 

        'Beep

        Console.WriteLine("Ajustamos la frecuencia y duración del Beeeeep")

        Console.WriteLine()

 

        Dim frequency As Integer

        Dim duration As Integer

 

        Console.Write("Ingrese una frecuencia entre 37 y 32767: ")

        Try

            frequency = Int32.Parse(Console.ReadLine)

 

            If frequency < 37 Or frequency > 32767 Then

                Console.WriteLine("Has ingresado un valor incorrecto, utilizaremos el 1000")

                frequency = 1000

            End If

 

        Catch ex As Exception

            Console.WriteLine("Has ingresado un valor incorrecto, utilizaremos el 1000")

            frequency = 1000

        End Try

        Console.WriteLine()

 

 

        Console.Write("Ingrese la duración en milisegundos (1000 = 1 segundo): ")

        Try

            duration = Int32.Parse(Console.ReadLine)

        Catch ex As Exception

            Console.WriteLine("Has ingresado un valor incorrecto, utilizaremos el 500")

            duration = 500

        End Try

 

        Console.Beep(frequency, duration)

 

 

        Console.WriteLine()

        Console.WriteLine("Presione Enter para finalizar")

        Console.ReadLine()

 

 

 

    End Sub

 

End Module

 

 

 


 

No hay comentarios:

Publicar un comentario