Académique Documents
Professionnel Documents
Culture Documents
1 Controles Estndar
Que son los controles?
Realmente son objetos que disponen de sus propias propiedades y mtodos, y cuya utilidad es la
de facilitarnos el desarrollo de nuestras aplicaciones. Bueno, este intento de definicin puede haber
quedado bien, pero para que lo tengamos ms claro, tener en cuenta que en cualquier aplicacin
con la que trabajamos estamos rodeados de controles. Quien no ha visto en multitud de programas
los botones ACEPTAR y CANCELAR, un cuadro para introducir texto, una lista con datos, etc.
Pues todos ellos son controles y no tendremos que preocuparnos por crearlos para nuestras
aplicaciones sino que ya vienen con el paquete de VB, lo nico que tendremos que hacer es
modificar sus propiedades: tamao, color, etc. para incorporarlos en nuestras aplicaciones y
asociarles el cdigo necesario para que se comporten como esperamos al ejecutar la aplicacin.
Antes de empezar a conocer los controles bsicos veamos cules son sus caractersticas
generales:
Propiedades: Todos los controles disponen de una serie de propiedades las cuales podemos
cambiar al incluirlos en nuestras aplicaciones. Ejemplos de propiedades son el color, el tipo de
letra, el nombre, el texto, etc
Mtodos: Son procedimientos asociados a los controles, es decir, rutinas ya establecidas que
podemos invocar desde nuestras aplicaciones para que se realice alguna operacin sobre el
control. Por ejemplo el control List View (la lista de archivos que aparece en el explorador de
Windows) dispone del mtodo order que te ordena los datos aparecidos en la lista.
Eventos: Son acciones que pueden ser motivadas por el propio usuario o por mismo sistema
operativo. Ejemplos pueden ser el movimiento del ratn o hacer click sobre su botn. En Visual
Basic digamos que se utiliza la programacin orientada a eventos, lo cual es una de las diferencias
ms importantes respecto a la programacin lineal de MS DOS. No necesitamos detectar cuando
se ha producido un evento determinado, Windows lo detecta automticamente. Los eventos ya
estn definidos, son bastantes y cada control cuenta con los suyos propios, aunque son muy
parecidos. Lo nico que tendremos que hacer es asociar el cdigo necesario al evento que
necesitemos tratar.
del formulario tomando como base los cambios efectuados en sus datos cuando no estaba
activado.
AutoSizeChanged: este evento se produce cuando cambia la propiedad AutoSize.
AutoValidaChanged se produce cuando cambia la propiedad AutoValidate.
BackColorChanged este evento se provoca si la propiedad BackColor se modifica mediante
programacin o interaccin del usuario.
BackGroundChanged este evento se provoca si la propiedad BackgroundImage se modifica
mediante programacin o interaccin del usuario.
Click El evento Click pasa un EventArgs a su controlador de eventos, por lo que slo indica que se
ha producido un clic. Si necesita informacin del mouse ms especfica (botn, nmero de clics,
rotacin de la rueda o ubicacin), utilice el evento MouseClick. Sin embargo, no se producir el
evento MouseClick si el clic se produce por una accin distinta de la del mouse, como presionar la
tecla ENTRAR.
MouseMove este evento indica que cuando pase el puntero del mouse por el formulario se
ejecutar lo que este codificado en l.
FormClosing este evento se ejecutar cuando se cierre la ventana. Por ejemplo si queremos
visualizar un mensaje de agradecimiento cuando se cierre la ventana.
ContexMenuChanged este evento se provoca si la propiedad ContextMenu se modifica mediante
programacin o interaccin del usuario.
CursorChanged este
evento
se
provoca
si
la
propiedad Cursor se
modifica
mediante
Load se produce antes de que se muestre un formulario por primera vez, este evento se puede
usar para realizar tareas tales como la asignacin de los recursos que utiliza el formulario.
MenStart este evento se provoca cuando el usuario hace clic en cualquier elemento del
men. Este evento se puede usar para realizar tareas tales como la habilitacin y deshabilitacin
de los controles del formulario a los que el usuario no debe tener acceso cuando se est teniendo
acceso a los mens.
MouseDoubleClick el evento MouseDoubleClick se produce cuando el usuario presiona dos veces
un botn del mouse en rpida sucesin cuando el cursor est sobre el control. La configuracin del
mouse del sistema operativo del usuario determina el intervalo de tiempo que separa dos clics
nicos de un doble clic.
TextChanged este evento se provoca si la propiedad Text se modifica mediante programacin o
interaccin del usuario.
Shown el evento Shown slo se produce la primera vez que se muestra un formulario; este evento
no se genera al minimizarlo, maximizarlo, restaurarlo, ocultarlo, mostrarlo, o invalidarlo y dibujarlo
de nuevo. Para obtener ms informacin sobre el orden de eventos de un formulario, vea Orden de
eventos en los formularios Windows Forms
Layout el evento Layout se produce cuando se agregan o se quitan controles secundarios, cuando
los lmites del control cambian o cuando se producen otros cambios que pueden afectar al diseo
del
control. El
evento
de
diseo
puede
suprimirse
mediante
los
la
ventana Propiedades,
establezca
la
Left y
la
se est controlando. Al hacer referencia a las propiedades del objeto (y, a veces, a sus mtodos),
puede obtener informacin tal como la posicin del mouse para los eventos del mouse o los datos
que se estn transfiriendo en los eventos de arrastrar y colocar.
En el ejemplo siguiente, el controlador de eventos MouseDown utiliza el parmetro sender para
determinar el tipo de objeto que gener el evento, y si el objeto es un a PictureBox, el parmetro e
se utiliza para desplazar una etiqueta a la ubicacin en la que se produjo el clic. Para duplicar este
ejemplo, agregue dos controles PictureBox y un control Label a un formulario.
VB
Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As _
System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown, _
PictureBox1.MouseDown, PictureBox2.MouseDown
If TypeOf sender Is PictureBox Then
Label1.Location = sender.Location + e.Location
Else
MsgBox("Please click a picture")
End If
End Sub
Habitualmente, cada evento produce un controlador de eventos con un tipo de objeto de evento
diferente para el segundo parmetro. Algunos controladores de eventos, como los de los eventos
MouseDown y MouseUp, tienen el mismo tipo de objeto, MouseEventArgs, para el segundo
parmetro. Para estos tipos de eventos, se puede utilizar el mismo controlador de eventos para
controlar ambos eventos.
Para los eventos que transfieren tipos de objetos de eventos diferentes, deben crearse
controladores de eventos independientes. Por ejemplo, el evento TextChanged de un control
TextBox transfiere el objeto de evento genrico EventArgs, mientras que el evento MouseDown
transfiere el objeto de evento MouseEventArgs, que es ms especializado. El objeto
MouseEventArgs contiene propiedades que son especficas de los eventos del mouse, como
Button, que determina qu botn del mouse se ha presionado; estas propiedades no se aplican a
un control TextBox y podra producirse un error si se intenta establecer referencias a ellas.
Adems de las diferencias conceptuales en el control de eventos, los nombres y el comportamiento
de algunos eventos para varios objetos son diferentes en Visual Basic 2008. Para obtener ms
informacin, vea Controles de formularios Windows Forms para usuarios de Visual Basic 6.0.
Las aplicaciones independientes tienen normalmente una ventana principal, que tanto muestra los
datos principales sobre los que funciona la aplicacin como expone la funcionalidad de
procesamiento de datos a travs de mecanismos de interfaz de usuario (UI) tales como barras de
mens, barras de herramientas y barras de estado. Una aplicacin no trivial tambin puede mostrar
ventanas adicionales para hacer lo siguiente:
Estos tipos de ventanas se conocen como cuadros de dilogo y hay dos tipos: modales y no
modales.
Cuadros de dialogo modales:
Nos muestras las funciones cuando necesitan datos adicionales de los usuarios para
continuar. Dado que la funcin depende del cuadro de dilogo modal para recopilar los datos, el
cuadro de dilogo modal tambin impide que un usuario active otras ventanas de la aplicacin
mientras permanece abierto. En la mayora de los casos, los cuadros de dilogo modales permiten
a los usuarios sealar que han terminado con el cuadro de dilogo modal presionando un
botn Aceptar o Cancelar. Al presionar el botn Aceptarse indica que el usuario ha introducido los
datos
desea
que
la
funcin
contine
su
proceso
con
esos
datos. Presionar
el
botn Cancelar indica que el usuario desea detener la ejecucin de la funcin. Los ejemplos ms
comunes de cuadros de dilogo modales se muestran para abrir, guardar e imprimir datos.
Cuadros de dialogo no modales:
Estos no impiden que el usuario active otras ventanas mientras est abierto. Por ejemplo, si un
usuario desea buscar apariciones de una palabra determinada en un documento, una ventana
principal abrir habitualmente un cuadro de dilogo para preguntar al usuario qu palabra est
buscando. Dado que la bsqueda de una palabra no impide que un usuario edite el documento, no
obstante, no es necesario que el cuadro de dilogo sea modal. Un cuadro de dilogo no modal
proporciona al menos un botnCerrar para cerrar el cuadro de dilogo y puede proporcionar
botones adicionales para ejecutar funciones concretas, como un botn Buscar siguiente para
buscar la palabra siguiente que coincida con los criterios de una bsqueda de palabra.
Windows Presentation Foundation (WPF) permite crear varios tipos de cuadros de dilogo,
incluidos
cuadros
de
mensaje,
cuadros
de
dilogo
comunes
cuadros
de
dilogo
personalizados. Este tema explica cada uno de ellos y Dialog Box Sample proporciona ejemplos
relacionados.
Un ejemplo comn de cuadro de dialogo no
modal: