sábado, 11 de agosto de 2012

VB.NET - Creación de Biblioteca de Controles de Windows

Mediante este tipo de proyecto usted podrá crear controles personalizados para usarlos en formularios Windows Forms.

Primeramente crearemos una carpeta en nuestra unidad E llamada Proyecto_Controles, teniendo  así:
 
Ahora iniciaremos el Visual Studio 2005, para eso damos click en el Menú Inicio (Start) y luego click en Ejecutar (Run) y escribimos lo sgte:
Una vez escrito el Ejecutable del Visual Studio daremos click al botón Aceptar (OK), teniendo así:
 
Ahora procederemos a crear nuestro proyecto, para esto daremos click al Menú ArchivoNuevoProyecto, teniendo así:
Una vez dado click nos mostrara una ventana en la cual en el panel izquierdo en Tipo de Proyecto elegiremos Visual Basic y en el panel derecho elegiremos la plantilla Biblioteca de controles de Windows, en Nombre de proyecto pondremos Proyecto_Mejia y en ubicación estableceremos la ruta de la carpeta creada inicialmente, teniendo así:
 
Una vez elegida la plantilla correspondiente daremos click en el botón Aceptar, teniendo así:
Ahora procederemos a cambiar de nombre a nuestro Control de Usuario (Usercontrol), le pondremos por nombre TextBoxLetras, teniendo así:
Una vez cambiado el nombre daremos click derecho en el entorno grafico y elegiremos Ver Código, teniendo así:
Una vez dado click nos mostrara la ventana de código, teniendo así:
Ahora en el Combo que dice Declaraciones, lo desplegaremos y elegiremos InitializeComponent, teniendo así:
Una vez dado click en InitializeComponent tendremos acceso al contenido de dicho método, teniendo así:
Ahora procederemos a borrar todo código que contenga este método, quedándonos así:
Ahora volvemos a la ventana de código, teniendo así:
Ahora especificaremos que esta clase herede todas las características de un TextBox, para esto pondremos Inherits (Herencia) y seguidamente de que clase heredara (TextBox), teniendo así:
Notaras que nos marca un error, para controlar este error daremos click en el subrayado de color rojo (el que esta al final), y nos mostrara lo sgte:
Daremos click en el primer vínculo, al hacerlo se corregirá el error, teniendo así:
Ahora volveremos al Diseñador, para eso daremos click derecho y click en Ver Diseñador, teniendo así:
A la hora que des click tendremos una vista completamente distinta a la inicial, teniendo así:
Ahora arrastraremos el control TextBox a nuestra clase, teniendo así:
Ahora daremos click derecho a nuestra clase y click en Ver Código, teniendo así:
Una vez dado click volveremos al Editor de Código, teniendo así:
Ahora desplegaremos el ComboBox que dice TextBoxLetras y elegiremos TextBox1 (Control que arrastramos hace un momento), teniendo así:
Una vez elegido lo anterior procederemos a desplegar en el ComboBox que dice Declaraciones elegiremos en este caso el Evento que se desencadena o ejecuta cuando se pulsa una tecla en dicho control (KeyPress), en este caso lo elegimos y al hacerlo se construirá el método correspondiente, teniendo así:
Ahora el método construido es el que sigue a continuación:

    Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress

    End Sub

Ahora en la parte del Handles cambiaremos TextBox1.KeyPress por MyBase.KeyPress, teniendo asi:

    Private Sub TextBox1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress

    End Sub

Palabra Clave MyBase.- Esta Palabra Clave sirve para llamar a métodos de una clase Base cuando reemplace métodos en una clase derivada. Por Ejemplo, supongamos que diseña una clase derivada que reemplaza un método de la clase base. El método reemplazado puede llamar al método de la clase y modificar el valor devuelto como se muestra en el fragmento de código siguiente.

Ahora la programación de este evento es la sgte:

    Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress
        Dim I As Byte = CByte(Asc(e.KeyChar))
        Select Case I
            Case 65 To 90
            Case 97 To 122
            Case 8, 13, 32
                e.Handled = False
            Case Else
                e.Handled = True
        End Select
    End Sub

Finalmente en tu Editor de Código tendremos así:
Ahora para poder Construir o Crear Nuestro control solo bastara que demos click derecho en nuestro proyecto (Proyecto_Mejia) y click en Generar, teniendo así:
Ahora procederemos a ver si nuestro Proyecto de Solución esta visible, para esto damos click en el Menú Herramientas y luego click en Opciones, teniendo así:
Ahora buscaremos el Nodo Proyectos y Soluciones y deberás constatar que el check Mostrar Solución Siempre este activado, sino lo estuviese pues lo activas, teniendo así:
Una vez marcada la opción daremos click en el botón Aceptar.

Ahora para poder utilizar el control que acabamos de crear procederemos a crear un Proyecto de Aplicación para Windows, para esto seleccionaremos nuestro Administrador de Proyectos (Solución), le damos click derecho y elegimos Agregar y finalmente click en Nuevo Proyecto, teniendo así:
Una vez dado click nos mostrara una ventana en la cual en el panel izquierdo en Tipo de Proyecto elegiremos Visual Basic y en el panel derecho elegiremos la plantilla Aplicación para Windows, en Nombre de proyecto pondremos Proyecto_Formularios_Mejia y en Ubicación estableceremos la ruta de la carpeta creada inicialmente, teniendo así:
Una vez elegida la plantilla correspondiente daremos click en el botón Aceptar, teniendo así:
Ahora seleccionaremos nuestro proyecto, le daremos click derecho y finalmente click en Agregar Referencia, teniendo así:
Una vez dado click nos mostrara la sgte ventana:
Ahora daremos click a la pestaña Examinar, teniendo así:
Ahora seleccionaremos la carpeta la cual contiene todos nuestros proyectos (Proyecto_Controles), teniendo así:
Ahora entraremos a esa carpeta y dentro de Debug elegiremos nuestra DLL (Control) el cual se creó cuando generamos el proyecto anterior, teniendo así:
 Una vez elegido daremos click al botón Aceptar, Ahora procederemos a Generar Nuestro Proyecto de Windows, para esto le daremos click derecho a nuestra aplicación para Windows, y le daremos click a Generar, teniendo así:
Ahora notaras que se agrego una Ficha llamada Componentes Proyecto_Mejia en la cual está el control que creamos anteriormente, teniendo así:
Ahora arrastraremos nuestro control a nuestro formulario, el diseño del mismo será algo así:
Aquí lo único que hay que programar es el botón Salir, para esto le daremos doble click a nuestro botón, la programación correspondiente será la sgte:

Private Sub BtnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSalir.Click
     Application.Exit()
End Sub

Una vez terminado de programar nuestro botón pulsaremos la tecla de Función F5 para poder ejecutar nuestro Formulario, Notaras que solo puedes Ingresar tanto letras mayúsculas como en minúsculas, también acepta los espacios en blanco, el backs pace y la tecla ENTER.
Ahora procederemos a cerrar este formulario.

Este Control de Usuario que acabamos de crear lo podemos utilizar en cualquier Lenguaje del Visual Studio, ya sea en Visual Basic, Visual C# como también en Visual J#. A continuación procederé a crear los dos proyectos siguientes para demostrarte que si se puede hacer.

Primeramente empezaremos a crear una Aplicación para Windows bajo el Lenguaje C#, para esto en nuestro Administrador de Proyectos (Solución), le daremos click derecho, elegiremos Agregar y finalmente daremos click en Nuevo Proyecto, teniendo así:
Una vez dado click nos mostrara una ventana en la cual en el panel izquierdo en Tipo de Proyecto elegiremos Visual C# y en el panel derecho elegiremos la plantilla Aplicación para Windows, en Nombre de proyecto pondremos Proyecto_Formularios_Mejia2 y en Ubicación estableceremos la ruta de la carpeta creada inicialmente, teniendo así:
Una vez elegida la plantilla correspondiente daremos click en el botón Aceptar, Ahora arrastraremos nuestro control a nuestro formulario, el diseño del mismo será algo así:
Aquí lo único que hay que programar es el botón Salir, para esto le daremos doble click a nuestro botón, la programación correspondiente será la sgte:

private void BtnSalir_Click(object sender, EventArgs e)
{
        Application.Exit();
}

Una vez terminado de programar nuestro botón pulsaremos la tecla de Función F5 para poder ejecutar nuestro Formulario, Notaras que solo puedes Ingresar tanto letras mayúsculas como en minúsculas, también acepta los espacios en blanco, el backs pace y la tecla ENTER.
A continuación culminaremos creando nuestra Aplicación para Windows bajo el Lenguaje J#, para esto en nuestro Administrador de Proyectos (Solución), le daremos click derecho, elegiremos Agregar y finalmente daremos click en Nuevo Proyecto, teniendo así:
Una vez dado click nos mostrara una ventana en la cual en el panel izquierdo en Tipo de Proyecto elegiremos Visual J# y en el panel derecho elegiremos la plantilla Aplicación para Windows, en Nombre de proyecto pondremos Proyecto_Formularios_Mejia3 y en Ubicación estableceremos la ruta de la carpeta creada inicialmente, teniendo así:
Una vez elegida la plantilla correspondiente daremos click en el botón Aceptar, Ahora arrastraremos nuestro control a nuestro formulario, el diseño del mismo será algo así:
Aquí lo único que hay que programar es el botón Salir, para esto le daremos doble click a nuestro botón, la programación correspondiente será la sgte:

private void BtnSalir_Click(Object sender, System.EventArgs e)
{
                Application.Exit();
}

Una vez terminado de programar nuestro botón pulsaremos la tecla de Función F5 para poder ejecutar nuestro Formulario, Notaras que solo puedes Ingresar tanto letras mayúsculas como en minúsculas, también acepta los espacios en blanco, el backspace y la tecla ENTER.
Con este ultimo proyecto culminamos.

No hay comentarios:

Publicar un comentario