¿ Qué es Windows Forms ? Windows Forms es un subconjunto de la .NET Framework Class Library que permite el desarrollo de aplicaciones de escritorio ricas bajo Microsoft Windows.
Incluye clases base, interfaces, enumeraciones y controles gráficos diversos.
¿ Qué es un formulario ? Un formulario Windows Forms actúa como interfaz del usuario local de Windows. Los formularios pueden ser ventanas estándar, interfaces de múltiples documentos (MDI), cuadros de diálogo, etc. Los formularios son clases que exponen propiedades, métodos que definen su comportamiento y eventos que definen la interacción con el usuario.
Cómo crear un proyecto de aplicación para Windows Utilizando los entornos de desarrollo: Visual C# 2005 Express Edition o Visual Basic 2005 Express Edition, se deben seguir estos pasos: En el menú File, seleccionar New Project En la ventana que aparece seleccionar Windows Application No es necesario crear un directorio para los archivos del proyecto, éstos son creados en un directorio temporal hasta que se decida grabarlos.
El diseñador de formularios Al momento de diseñar un formulario, el diseñador de Visual Studio Express escribe de forma automática el código que describe a cada uno de los controles y al propio formulario. El concepto de Partial class que incorpora .NET 2.0 permite separar el código de una clase en varios archivos fuentes diferentes. El diseñador de formularios utiliza esta técnica para escribir en un archivo aparte todo el código que él mismo genera. Esto permite organizar más claramente el código, manteniendo separada la lógica de la aplicación en un archivo diferente.
Generalidades (1/2) El objeto Form es el principal componente de una aplicación Windows. Algunas de sus propiedades admiten valores de alguno de los tipos nativos de .NET
Ejemplo Código C# miForm.ShowInTaskBar = false; miForm.Opacity = 0.83; miForm.ShowInTaskBar = False miForm.Opacity = 0.83 Ejemplo Código Visual Basic
Generalidades (2/2) Otras propiedades requieren la asignación de objetos
Ejemplo en C# miForm.Size = new Size(100, 100); miForm.Location = new Location(0, 0); Ejemplo en Visual Basic miForm.Size = New Size(100, 100) miForm.Location = New Location(0, 0)
Métodos Show() Visualiza el formulario. Puede especificarse su formulario Owner. Si un formulario A es owner (dueño) de otro B, el formulario B siempre se visualizará sobre el A, sin importar si otro formulario está activo.
ShowDialog() Visualiza el formulario como cuadro de diálogo Modal. Un formulario visualizado de forma modal no permite que otro formulario perteneciente a la misma aplicación tome foco. Esta opción es utilizada para mostrar cuadros de diálogo y focalizar la atención del usuario.
Eventos (1/2) Manejadores de eventos
Por cada evento soportado por el Form (o por cualquier otro objeto) es posible definir varios métodos manejadores.
A su vez, un método manejador puede controlar eventos disparados por diferentes objetos.
Eventos (2/2) Ejemplos: Código C# // Varios manejadores para un evento this.Click += new EventHandler(MetodoManejador1); this.Click += new EventHandler(MetodoManejador2); // Un mismo manejador para diferentes eventos this.Load += new EventHandler(ManejadorCentralizado); this.Activated +=new EventHandler(ManejadorCentralizado); ‘ Varios manejadores para un evento AddHandler Me.Click, AddressOf MetodoManejador1 AddHandler Me.Click, AddressOf MetodoManejador2 ‘ Un mismo manejador para diferentes eventos AddHandler Me.Load, AddressOf ManejadorCentralizado AddHandler Me.Activated, AddressOf ManejadorCentralizado Código Visual Basic
Ciclo de vida del formulario Muchos de los eventos a los que responde el objeto Form pertenecen al ciclo de vida del formulario Entre estos eventos se encuentran los siguientes, en orden de ocurrencia: Load: El formulario está en memoria, pero invisible. Paint: Se “pinta” el formulario y sus controles. Activated: El formulario recibe foco. FormClosing: Permite cancelar el cierre. FormClosed: El formulario es invisible. Disposed: El objeto está siendo destruido.
Trabajando con el Mouse El mouse puede ser controlado escribiendo código para alguno de estos eventos: MouseClick MouseEnter MouseMove A través de los argumentos que reciben los manejadores de estos eventos se puede obtener: La posición del puntero Qué botón fue presionado Cantidad de “pasos” que fue girada la rueda
Trabajando con el Teclado El manejador del evento KeyPress informa a través del argumento e.KeyChar el código de la tecla presionada. Es posible cancelar el comportamiento por defecto asignando “true” al argumento e.Handled. Los argumentos que reciben los manejadores de los eventos KeyDown y KeyUp informan del estado de las teclas Alt, Ctrl y Shift. El evento HelpRequested es disparado cuando se presiona la tecla F1.
El objeto Form expone diferentes propiedades, métodos y eventos que permiten controlar la navegabilidad del formulario: Propiedad CanFocus: Indica si el control puede tomar foco. Propiedad Focused: Indica si el control tiene el foco actualmente. Método Focus(): “Mueve” el foco al objeto deseado. Orden de tabulación (Propiedad TabIndex) En forma visual, desde el diseñador de formularios, es posible configurar el orden en el que el foco se irá moviendo por los controles. Foco de controles y orden de tabulación
MessageBox Para mostrar información o pedir intervención del usuario, es posible utilizar la clase MessageBox. Esta clase contiene métodos estáticos que permiten mostrar un cuadro de mensaje para interactuar con el usuario de la aplicación. Los parámetros se especifican a través de enumerados que facilitan la legibilidad del código, por ejemplo: MessageBoxButtons.AbortRetryIgnore MessageBoxIcon.Error MessageBoxDefaultButton.Button1
Controles de Windows (1/3) Gran parte del éxito de una aplicación Windows consiste en elegir y manejar adecuadamente los controles que ofrece .NET. Entre los controles nativos se encuentran controles totalmente nuevos y versiones mejoradas de sus pares de .NET 1.1. Nuevos controles como el control BindingSource mejoran notablemente el enlace de datos provenientes de muy diferentes fuentes de datos.
Controles de Windows (2/3) MaskedEdit Es un control que permite el uso de máscaras personalizadas para facilitar la entrada de datos. TextBox Cuadro de texto que, entre otras mejoras tiene la funcionalidad de auto completar. Label Si el texto ocupa más lugar que el largo del control, gracias a la nueva propiedad AutoEllipsis incorporada en .NET 2.0, el exedente se reemplaza automáticamente con tres puntos (…)
Página siguiente |