trabajar con controles en vb

26
Trabajar con controles

Upload: api-3827518

Post on 07-Jun-2015

1.791 views

Category:

Documents


2 download

DESCRIPTION

Acerca de Trabajar con controles en VB.NET

TRANSCRIPT

Page 1: Trabajar Con Controles en VB

Trabajar con controles

Page 2: Trabajar Con Controles en VB

Descripción

Crear un controlador de eventos para un control

Uso de los controles de los formularios Windows Forms

Uso de los cuadros de diálogo en una aplicaciónWindows Forms

Agregar controles en tiempo de ejecución

Crear menús

Validar introducción de datos de los usuarios

Page 3: Trabajar Con Controles en VB

Lección: crear un controlador de eventos para un control

Modelo de eventos del .NET Framework

¿Qué es un controlador de eventos?

La palabra clave Handles

Cómo crear controladores de eventos para eventos de control

Cómo añadir y eliminar controladores de eventos en tiempo de ejecución

Práctica: crear un controlador de eventos para un control

Page 4: Trabajar Con Controles en VB

Modelo de eventos del .NET Framework

Button1Private Sub Button1_Click(ByVal Sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Invoca el delegado

DelegadoDelegadoDelegado

Private Sub Button1_Click(ByVal Sender As System.Object, ByVal e As System.EventArgs) HandlesButton1.Click

El delegado invoca el procedimiento asociado

Page 5: Trabajar Con Controles en VB

¿Qué es un controlador de eventos?

Controladores de eventosMétodos ligados a un eventoCuando el evento se produce, se ejecuta el código del controlador de eventos

Dos argumentos de eventos con controladores de eventos

Un objeto que representa el objeto que produjo el eventoUn objeto de evento que contiene cualquier información específica del evento

Private Sub Button1_Click (ByVal Sender As System.Object, ByVal e As System.EventArgs)

Private Sub Button1_Click (ByVal Sender As System.Object, ByVal e As System.EventArgs)

Page 6: Trabajar Con Controles en VB

La palabra clave Handles

La palabra clave HandlesDeclara que un procedimiento controla un evento específicoPermite especificar controladores de eventos en tiempo de diseño

PartesProcedureDeclaration Eventos

Public Sub Age (ByVal Sender As System.Object, ByVal e As System.EventArgs) Handles Under21.Click, Twenties.Click,

Thirties.Click, Forties.Click, FiftiesPlus.click

Public Sub Age (ByVal Sender As System.Object, ByVal e As System.EventArgs) Handles Under21.Click, Twenties.Click,

Thirties.Click, Forties.Click, FiftiesPlus.click

La rutina puede usar cualquier nombre

La rutina puede usar cualquier nombre

La lista de argumentos debe coincidir con la lista

usual del evento concreto

La lista de argumentos debe coincidir con la lista

usual del evento concreto

Palabra clave HandlesPalabra clave Handles Lista de eventos que controlará esta rutinaLista de eventos que controlará esta rutina

Page 7: Trabajar Con Controles en VB

Cómo crear controladores de eventos para eventos de controles

Friend WithEvents Button1 As System.Windows.Forms.Button

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

MessageBox.Show("MyHandler captured the event")

End Sub

Friend WithEvents Button1 As System.Windows.Forms.Button

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

MessageBox.Show("MyHandler captured the event")

End Sub

Utilizar la palabra clave WithEvents para declarar variables de objetos que se utilizarán con la instrucción Handles

Utilizar la palabra clave Handles al final de la declaración del procedimiento

Page 8: Trabajar Con Controles en VB

Cómo añadir y eliminar controladores de eventos en tiempo de ejecución

Para asociar un evento a un controlador de eventos en tiempo de ejecución, utilizar la instrucción AddHandler

Para eliminar la asociación de un evento a un controlador de eventos en tiempo de ejecución, utilizar la instrucción RemoveHandler

RemoveHandler Button3.Click, AddressOfProcess1

RemoveHandler Button3.Click, AddressOfProcess1

AddHandler Button3.Click, AddressOf Process1AddHandler Button3.Click, AddressOf Process1

El evento que desea controlar

El evento que desea controlar

La rutina que desea utilizar para controlar el evento

La rutina que desea utilizar para controlar el evento

Page 9: Trabajar Con Controles en VB

Seleccionar un control Windows Forms según la función

Controles Windows Forms

Control ButtonBase

CheckboxRadioButton

TreeViewGroupBoxListControls

ComboBoxListBox

ListView

CommonDialogColorDialogFontDialogOpenDialogSaveDialogPrintDialogPageSetupDialogPrintPreviewDialog

StatusBarTrackBarToolBarScrollbarTextBoxBase

TextBoxRichTextBox

ProgressbarPictureBoxScrollableControl

ContainerControlForm

PanelData Controls

DataGrid

Splitter

Page 10: Trabajar Con Controles en VB

Cómo utilizar el control StatusBar

Hacer clic en la propiedad Panels y abrir el Editor de coleccionesStatusBarPanelHacer clic en la propiedad Panels y abrir el Editor de coleccionesStatusBarPanel

Añadir un control StatusBar al formularioAñadir un control StatusBar al formulario

Utilizar los botones Agregar y Quitar para añadir y eliminar paneles del control StatusBarUtilizar los botones Agregar y Quitar para añadir y eliminar paneles del control StatusBar

Configurar las propiedades de los paneles individuales Configurar las propiedades de los paneles individuales

Hacer clic en Aceptar para cerrar el cuadro de diálogo y crear los paneles que se han especificadoHacer clic en Aceptar para cerrar el cuadro de diálogo y crear los paneles que se han especificado

En la ventana Propiedades, establecer la propiedad ShowPanelscomo trueEn la ventana Propiedades, establecer la propiedad ShowPanelscomo true

Page 11: Trabajar Con Controles en VB

Cómo utilizar el control ListBox

Añadir elementos a ListBoxutilizando la colección ItemsAñadir elementos a ListBoxutilizando la colección Items

Añadir un control ListBox al formularioAñadir un control ListBox al formulario

Configurar las propiedades del control ListBoxConfigurar las propiedades del control ListBox

Page 12: Trabajar Con Controles en VB

Cómo utilizar los controles GroupBox y Panel

Agregar otros controles al control contenedor, arrastrando cada uno al panelAgregar otros controles al control contenedor, arrastrando cada uno al panel

Arrastrar un control contenedor (Panel o GroupBox) de la Caja de herramientas a un formularioArrastrar un control contenedor (Panel o GroupBox) de la Caja de herramientas a un formulario

Si se dispone de controles existentes que se desean encerrar en el contenedor, se deben arrastrar a ésteSi se dispone de controles existentes que se desean encerrar en el contenedor, se deben arrastrar a éste

Para mostrar barras de desplazamiento para el control Panel, establecer su propiedad AutoScrollbar en TruePara mostrar barras de desplazamiento para el control Panel, establecer su propiedad AutoScrollbar en True

Para mostrar una leyenda en el GroupBox, establecer su propiedad Text con la leyenda adecuadaPara mostrar una leyenda en el GroupBox, establecer su propiedad Text con la leyenda adecuada

Page 13: Trabajar Con Controles en VB

Cómo utilizar los controles ToolBar e ImageList

Para utilizar Para utilizar ToolbarToolbar en un formulario Windows en un formulario Windows FormsForms

Añadir botones al ToolbarAñadir botones al Toolbar

Añadir un control Toolbar desde la Caja de herramientas al formularioAñadir un control Toolbar desde la Caja de herramientas al formulario

Añadir los botones al ToolbarButtonCollectionAñadir los botones al ToolbarButtonCollection

Configurar los botones estableciendo el texto y/o imagenConfigurar los botones estableciendo el texto y/o imagen

Page 14: Trabajar Con Controles en VB

Seleccionar cuadros de diálogo en Visual Studio .NET

PrintPreviewDialogPrintPreviewDialogPrintPreviewDialog Muestra el aspecto que tendrá un documento cuando se imprimaMuestra el aspecto que tendrá un documento cuando se imprima

PageSetupDialogPageSetupDialog Configura los detalles de la página para su impresiónConfigura los detalles de la página para su impresión

PrintDialogPrintDialog Selecciona una impresora y determina otras configuraciones relacionadas con la impresiónSelecciona una impresora y determina otras configuraciones relacionadas con la impresión

FontDialogFontDialog Expone las fuentes actualmente instaladas en el sistemaExpone las fuentes actualmente instaladas en el sistema

ColorDialogColorDialog Permite a los usuarios seleccionar un color de la paleta y agregar colores a éstaPermite a los usuarios seleccionar un color de la paleta y agregar colores a ésta

SaveFileDialogSaveFileDialogSaveFileDialog Selecciona los archivos a guardar y la ubicación donde deben guardarseSelecciona los archivos a guardar y la ubicación donde deben guardarse

OpenFileDialogOpenFileDialogOpenFileDialog Permite a los usuarios abrir archivos mediante un cuadro de diálogo preconfiguradoPermite a los usuarios abrir archivos mediante un cuadro de diálogo preconfigurado

Page 15: Trabajar Con Controles en VB

Cómo mostrar cuadros de diálogo en una aplicación

Mostrar un cuadro de diálogo Visual Studio .NET preconfiguradoPrivate Sub Button1_Click(ByVal sender as

System.Object,ByVal e as System.EventsArgs)OpenFileDialog1.ShowDialog()

End Sub

Private Sub Button1_Click(ByVal sender as System.Object,ByVal e as System.EventsArgs)OpenFileDialog1.ShowDialog()

End Sub

Private Sub PerformSearch()MessageBox.Show("The search is now complete", _

"My Application", MessageBoxButtons.OKCancel, _ MessageBoxIcon.Asterisk)

End Sub

Private Sub PerformSearch()MessageBox.Show("The search is now complete", _

"My Application", MessageBoxButtons.OKCancel, _ MessageBoxIcon.Asterisk)

End Sub

Mostrar un cuadro de diálogo de mensaje

Page 16: Trabajar Con Controles en VB

Propiedad DialogResult

Propiedad DialogResult

Utilizar el valor devuelto por esta propiedad para determinar quéacción ha realizado el usuarioUtilizar el valor devuelto por esta propiedad para determinar quéacción ha realizado el usuario

El valor DialogResult.Cancel indica que el usuario ha hecho clic en el botón CancelEl valor DialogResult.Cancel indica que el usuario ha hecho clic en el botón Cancel

EjemploEjemploEjemplo

La propiedad DialogResult puede establecerse en tiempo de diseño o en tiempo de ejecuciónLa propiedad DialogResult puede establecerse en tiempo de diseño o en tiempo de ejecución

Page 17: Trabajar Con Controles en VB

Cómo utilizar la entrada de los cuadros de diálogo

Dim userResponse As DialogResult = OpenFileDialog1.ShowDialog()If userResponse = DialogResult.OK ThenfilePath = OpenFileDialog1.FileName.ToStringMessageBox.Show("You successfully opened: '" & filePath & "'", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)

Dim userResponse As DialogResult = OpenFileDialog1.ShowDialog()If userResponse = DialogResult.OK ThenfilePath = OpenFileDialog1.FileName.ToStringMessageBox.Show("You successfully opened: '" & filePath & "'", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)

Recuperar y utilizar resultados de cuadros de diRecuperar y utilizar resultados de cuadros de diáálogologo

Añadir código para recuperar el valor DialogResultAñadir código para recuperar el valor DialogResult

En la ventana de código, ir al controlador de eventos o el método para el que desea establecer la propiedad DialogResultEn la ventana de código, ir al controlador de eventos o el método para el que desea establecer la propiedad DialogResult

Page 18: Trabajar Con Controles en VB

Colección de controles

Colección de controlesRepresenta un colección de objetos de controlUtilizar los métodos Add, Remove y RemoveAt para agregar y eliminar controles de la colección

Form1.Controls.Contains(textbox1)Form1.Controls.Contains(textbox1)

Form1.Controls.Remove(textbox1)Form1.Controls.Remove(textbox1)

Form1.Controls.Add(textbox1)Form1.Controls.Add(textbox1)

Utilizar el método Contains para determinar si un control forma parte o no de una colección

Page 19: Trabajar Con Controles en VB

Cómo agregar controles en tiempo de ejecución

Para agregar controles en tiempo de ejecuciPara agregar controles en tiempo de ejecucióónn

Crear el control que se agregará al contenedorCrear el control que se agregará al contenedor

Dim signatureCheckBox As New CheckBox()

' set properties

signatureCheckBox.Left = 24

signatureCheckBox.Top = 80

signatureCheckBox.Text = "Signature required"

Dim signatureCheckBox As New CheckBox()

' set properties

signatureCheckBox.Left = 24

signatureCheckBox.Top = 80

signatureCheckBox.Text = "Signature required"

Añadir el control al contenedor utilizando el método Add de la propiedad ControlsAñadir el control al contenedor utilizando el método Add de la propiedad Controls

' add the new control to the collection

GroupBox1.Controls.Add(signatureCheckBox)

' add the new control to the collection

GroupBox1.Controls.Add(signatureCheckBox)

Page 20: Trabajar Con Controles en VB

Cómo agregar un menú contextual a un formulario

Para aPara aññadir controles en tiempo de ejecuciadir controles en tiempo de ejecucióónn

Asociar el menú contextual a un formulario o a un control estableciendo la propiedad ContextMenu de ese objetoAsociar el menú contextual a un formulario o a un control estableciendo la propiedad ContextMenu de ese objeto

En la Caja de herramientas, hacer doble clic en el control ContextMenuEn la Caja de herramientas, hacer doble clic en el control ContextMenu

Para agregar un menPara agregar un menúú contextual contextual programprogramááticamenteticamente

Public Sub AddContextMenu()Dim contxmenu as New ContextMenu()

Me.ContextMenu() = contxmenu…

End Sub

Public Sub AddContextMenu()Dim contxmenu as New ContextMenu()

Me.ContextMenu() = contxmenu…

End Sub

Page 21: Trabajar Con Controles en VB

Cómo agregar elementos de menú en tiempo de ejecución

Agregar elementos de menAgregar elementos de menúú a un mena un menúú contextual en tiempo de ejecucicontextual en tiempo de ejecucióónn

Dentro del método, añadir elementos de menú a la colección MenuItems del objeto ContextMenuDentro del método, añadir elementos de menú a la colección MenuItems del objeto ContextMenucontxMenu.MenuItems.Add(menuItemNew)contxMenu.MenuItems.Add(menuItemNew)

Dentro del método, establecer la propiedad Text para cada elemento de menúDentro del método, establecer la propiedad Text para cada elemento de menúMenuItemNew.Text = "New"MenuItemNew.Text = "New"

Dentro del método, crear objetos MenuItem para añadirlos al menúcontextual de la colección ObjectDentro del método, crear objetos MenuItem para añadirlos al menúcontextual de la colección ObjectDim menuItemNew as New MenuItem()Dim menuItemNew as New MenuItem()

Page 22: Trabajar Con Controles en VB

Cómo crear controladores de menú para elementos de menú

Para agregar funcionalidades a los elementos de menPara agregar funcionalidades a los elementos de menúú

Crear un controlador de eventos para el evento MenuItem.ClickCrear un controlador de eventos para el evento MenuItem.Click

Private Sub MenuItemNew_Click (ByVal sender as System.Object,ByVal e as System.EventsArgs)

End Sub

Private Sub MenuItemNew_Click (ByVal sender as System.Object,ByVal e as System.EventsArgs)

End Sub

Escribir el código para controlar el eventoEscribir el código para controlar el evento

Private Sub MenuItemNew_Click (ByVal sender as System.Object,ByVal e as System.EventsArgs)

MessageBox.Show("You clicked the NewOption")

End Sub

Private Sub MenuItemNew_Click (ByVal sender as System.Object,ByVal e as System.EventsArgs)

MessageBox.Show("You clicked the NewOption")

End Sub

Page 23: Trabajar Con Controles en VB

Cómo utilizar las propiedades del menú

Page 24: Trabajar Con Controles en VB

Cómo validar controles utilizando el evento Validating

Utilizar el evento Validating de un control para validar la entrada de los usuarios

El evento Validated se dispara cuando la validación de los controles finaliza la ejecución de eventos de validaciónLa propiedad CausesValidation determina si el control anterior participará en la validación. Si está establecida en False para un control, el control anterior no dispara el evento de validación

Page 25: Trabajar Con Controles en VB

Control ErrorProvider

ErrorProvider

Muestra errores cuando se valida la entrada del usuario en un formulario

Muestra errores en un dataset

Principales propiedades

Método clave

DataSourceDataSource ContainerControlContainerControl IconIcon

SetErrorSetError

Page 26: Trabajar Con Controles en VB

Cómo utilizar el control ErrorProvider

Para utilizar el control Para utilizar el control ErrorProviderErrorProvider

Añadir el control ErrorProviderAñadir el control ErrorProvider

Añadir controles al formularioAñadir controles al formulario

Añadir código al evento Validating del primer controlAñadir código al evento Validating del primer control