lenguaje de programación Œ capitulo x programando con...
TRANSCRIPT
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 12
Ejercicios
61. En esta aplicación usaremos tres Label (etiquetas), cambiándoles algunas
propiedades.
Primero crearemos un nuevo proyecto con el nombre de Ejercicio61, para
este ejercicio todavía no alteraremos ningún nombre de los controles, solo
cambiaremos las propiedades de algunos controles y pondremos en la propiedad de
texto de cada Label, el texto que se muestra en la imagen.
Control Label1
Propiedad Descripción
Font Verdana, Normal 20 pt
Control Label2
Propiedad Descripción
AutoSize False
BorderStyle Fixed3D
Font Verdana, Negrita 10 pt
TextAlign MiddleCenter
Control Label3
Propiedad Descripción
Font Verdana, Negrita Subrayada 8 pt
Label1
Label2
Label3
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 13
Eso es todo con respecto a nuestra primera aplicación, no se olviden que
para poner un control primero daremos clic sobre el control en la barra de
herramientas y haremos clic en el formulario ó podemos hacer doble clic en el
control de la barra de herramientas.
Para ejecutar el programa presionaremos la tecla F5 o daremos clic en el
botón Star Debugging, que ya lo conocen, por que es el mismo que se usa para
ejecutar las aplicaciones de consola.
62. Ahora en este ejercicio usaremos dos tipos de controles uno es el Label y el otro
es el TextBox.
Control Label1
Propiedad Descripción
AutoSize False
BorderStyle Fixed3D
Font Microsoft Sans Serif, Negrita 9 pt
TextAlign MiddleCenter
Label1
TextBox1
TextBox2
TextBox3
TextBox4
TextBox5
Label6
Label5
Label4
Label3
Label2
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 14
Control TextBox5
Propiedad Descripción
Multiline True
ScrollBars Vertical
Estos dos controles son los únicos al que le cambiaremos las propiedades. La
propiedad de Multiline del control TextBox nos permite que podamos ingresar una
cantidad considerable de caracteres y la propiedad ScrollBars nos mostrara una
barra de desplazamiento sobre el control.
63. bueno esta aplicación les dejo para que practiquen un poco, recuerden que las
aplicaciones de ventanas son para mejorar la calidad de diseño de otras
aplicaciones con lo son las de consola.
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 15
64. En este ejercicio aprenderemos a usar algunas propiedades que es de
importancia en el control del TextBox.
Características:
En el ciclo solo debe ingresar hasta 03 caracteres.
El sexo solo un carácter.
En la clave hasta 05 caracteres y no se debe de visualizar a media que
ingrese.
No se debe permitir el ingreso en la dirección electrónica.
Control TextBox2
Propiedad Descripción
MaxLength 3
Control TextBox3
Propiedad Descripción
MaxLength 1
Control TextBox4
Propiedad Descripción
MaxLength 5
PasswordChar *
TextBox1
TextBox2
TextBox3
TextBox5
Label6
Label5
Label4
Label3
Label2
Label1
TextBox4
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 16
Control TextBox5
Propiedad Descripción
ReadOnly True
Ahora ejecuten el programa y listo. La propiedad MaxLength nos permite
que especifiquemos que cantidad de caracteres va a contener el control mientras
que la propiedad PasswordChar nos indica mediante que carácter va a ser
reemplazado el carácter que ingresemos.
65. Este ejercicio es muy parecido al ejercicio número 62, le añadiremos solos dos
controles mas, que son el Button y el ToolTip.
Recuerda que tienes que poner en la propiedad de Text de cada control el
texto que se muestra en ellos en la figura.
TextBox1
TextBox2
TextBox3
TextBox4
TextBox5
Button2
Button1
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 17
Control Button1
Propiedad Descripción
ToolTip on ToolTip1 Adiciona un Nuevo Alumno
Control Button2
Propiedad Descripción
ToolTip on ToolTip1 Finaliza la Aplicación
Como se darán cuenta al añadir un ToolTip este aparece en la parte inferior
como en la figura de abajo, esto sucede por que es un objeto, la propiedad ToolTip
del control Button siempre va a aparecer acompañado del nombre que le pongamos
a nuestro TooTip.
Ahora veremos nuestra pequeña codificación que tendrán los botones.
Button1 (Evento Cick)
Para entrar a este evento solo basta darle doble clic en el botón y aparecerá
la siguiente ventana.
Así que escribiremos el siguiente código dentro del procedimiento.
Me.TextBox1.Text = "" Me.TextBox2.Text = "" Me.TextBox3.Text = "" Me.TextBox4.Text = "" Me.TextBox5.Text = "" Me.TextBox1.Focus()
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 18
Como ustedes saben que la propiedad Text del control, nos muestra el texto
que queramos así que al ponerle dos comillas, se interpreta que no va a tener
ningún texto, pero si queremos que se muestre un texto lo haremos también entre
comillas.
Mientras tanto el método Focus del control, nos indica que el foco ósea el
cursor se va a ubicar en el control TextBox1.
Button2 (Evento Cick)
Me.Close()
Como se darán cuenta escribo Me.Close, el Me nos indica el objeto actual,
que es el formulario y close es un método de este objeto que tiene por función
cerrar el formulario, por ejemplo si olvidamos el nombre de un control, basta que
pongamos Me. y seguido el prefijo del control y nos será mas útil de encontrar el
nombre del control, es por eso que se dice que estas dos ultimas versiones de VB
.Net están orientadas a objetos.
66. En este ejercicio aprenderemos a alterar propiedades de controles en tiempo de
ejecución.
Button1 (Evento Cick)
Me.Label1.Text = "Joel Martin Chuco Marrufo"
Button2 (Evento Cick)
Me.Label1.Text = "Yo Estudie en el Instituto Superior Tecnológico Argentina"
Button3 (Evento Cick)
Me.Label1.Text = "Naci el 15 de septiembre de 1984"
Label1
Button2 Button1
Button3
Button4
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 19
Button4 (Evento Cick)
Me.Close()
67. En este ejercicio aprenderemos ya a ponerle nombre a cada control, en la
propiedad Name de cada uno de ellos como se muestra en la figura.
btnNuevo (Evento Cick)
Me.txtNombre.Text = ""
Me.txtFecNac.Text = ""
Me.txtDNI.Text = ""
Me.txtDomAct.Text = ""
Me.txtNombre.Focus()
btnSalir (Evento Cick)
Me.Close()
txtNombre
txtFecNac
txtDNI
txtDomAct
btnSalir
btnNuevo
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 20
68. Bueno con este ejercicio veremos la diferencia entre una Variable de tipo Dim y
otra de tipo Static, si no les quedo claro en la explicación de las entregas
anteriores.
btnIncrementa (Evento Cick)
Dim A As Integer
Static B As Integer
A = A + 1
B = B + 1
Me.lblValA.Text = CStr(A)
Me.lblValB.Text = B.ToString
Como ven en el ejercicio cada vez que damos clic en el botón el valor de A
siempre va a ser 1, en cambio en el valor de B aumenta de 1 en 1, esto se debe a
que B es una variable de tipo Static, mejor dicho es una variable que va a
almacenar su valor anterior, en caso contrario la variable A, no va a almacenar
ningún valor anterior, ya que es declarada cada vez que presionamos el botón y se
le asigna el mismo valor de 1.
También se darán cuenta que uso dos formas de convertir el número a
cadena como es el CStr o el .ToString, cualquiera de las dos es válida, pero la de
CStr pertenece a las versiones anteriores del Visual Basic, en cambio el .ToString
pertenece a las versiones .Net del Visual Basic.
lblValA
lblValB
btnIncrementa
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 21
69. En este ejercicio veremos una variable a nivel de procedimiento.
Primero veremos el siguiente código, asé copien el código tal como esta y
ejecútenlo y vean lo que pasa.
btnProcA (Evento Cick)
Dim N As Integer
N = 5
Me.lblVariable.Text = N.ToString
N = 10
btnProcB (Evento Cick)
Me.lblVariable.Text = N.ToString
Como se darán cuenta en el procedimiento btnProcB la letra N aparece con
una raya azul más o menos como en la imagen.
Esto sucede por que la variable N que declaramos en el procedimiento
btnProcA es solo para ese procedimiento y no se puede utilizar en otro
procedimiento.
btnProcA
lblVariable
btnProcB
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 22
Y cuando tratamos de ejecutar nos aparecerá la siguiente ventana.
Para ver el error daremos clic en No y luego nos ubicaremos en la ventana
de Error List, en donde nos mostrar cual es el error.
Aquí nos indica en línea y en que columna se ubica el error, y si hubiera más
proyectos en la solución, también nos indica en que proyecta esta el error. Esta
explicación lo hago para que a la hora en que ejecuten sus aplicaciones sepan en
donde se ubica el error, la solución a este error seria la siguiente codificación.
Declararíamos la variable N a nivel del formulario como se muestra en la
figura.
Y luego el código en los botones seria lo siguiente.
btnProcA (Evento Cick)
N = 5
Me.lblVariable.Text = N.ToString
N = 10
btnProcB (Evento Cick)
Me.lblVariable.Text = N.ToString
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 23
70. En este ejercicio aprenderemos ya a cambiar y realizar un poco de codificación
para los siguientes botones y realización de cálculo, también usaremos un
procedimientos, casi todo lo que hemos aprendido en las entregas anteriores.
Características
Se debe de ingresar el nombre de un trabajador, las horas normales que ha
trabajado, las horas extras, el pago por cada hora normal y extra. Al hacer un clic
en el botón calcular, se deberá calcular y mostrar el total por las horas normales, el
total por las horas extras, el subtotal, un descuento del 10% del subtotal y el total
que se le debe pagar.
btnCalcular
txtHE
txtPHN
txtNombre
txtHTN
txtTotal
txtTHN
btnNuevo
btnSalir
txtPHE
txtDesc
txtSubTotal
txtTHE
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 24
Procedimiento LimpiarControles
Sub LimpiarControles()
Me.txtHE.Text = ""
Me.txtHTN.Text = ""
Me.txtNombre.Text = ""
Me.txtPHE.Text = ""
Me.txtPHN.Text = ""
Me.lblDesc.Text = ""
Me.lblSubTotal.Text = ""
Me.lblTHE.Text = ""
Me.lblTHN.Text = ""
Me.lblTotal.Text = ""
Me.txtNombre.Focus()
End Sub
Como ustedes saben los procedimientos se hacen fuera de otros
procedimientos, en este caso a nivel del formulario.
frmEjercicio70 (Evento Load)
LimpiarControles()
btnNuevo (Evento Cick)
Call LimpiarControles()
btnSalir (Evento Cick)
Me.Close()
btnCalcular (Evento Cick)
Dim HTN, HTE, PHN, PHE, THN, THE, ST, DES, TP As Single
Const Descuento = 10
HTN = Val(Me.txtHTN.Text) 'Horas Normales Trabajadas
HTE = Val(Me.txtHE.Text) 'Horas Extras Trabajadas
PHN = Val(Me.txtPHN.Text) 'Pago por Hora Normal
PHE = Val(Me.txtPHE.Text) 'Pago por hora Extra
THN = HTN * PHN 'Total por Horas Normales
THE = HTE * PHE 'Total por Horas Extras
ST = THN + THE 'Sub Total
DES = ST * Descuento / 100 'Descuento
TP = ST - DES 'Total a Pagar
Me.lblDesc.Text = DES.ToString
Me.lblSubTotal.Text = ST.ToString
Me.lblTHE.Text = THE.ToString
Me.lblTHN.Text = THN.ToString
Me.lblTotal.Text = TP.ToString
Lenguaje de Programación � Capitulo X
Programando con Visual Basic 2005
Joel Martin Chuco Marrufo 25
REM Seguna Forma, sin usar variables
'Me.lblTHN.Text = (Val(Me.txtHTN.Text) * Val(Me.txtPHN.Text)).ToString
'Me.lblTHE.Text = (Val(Me.txtHE.Text) * Val(Me.txtPHE.Text)).ToString
'Me.lblSubTotal.Text = (Val(Me.lblTHN.Text) + Val(Me.lblTHE.Text)).ToString
'Me.lblDesc.Text = (Val(Me.lblSubTotal.Text) * 10 / 100).ToString
'Me.lblTotal.Text = (Val(Me.lblSubTotal.Text) - Val(Me.lblDesc.Text)).ToString
Aquí uso dos formas de calcular, una es usando variables, la uso para que
entiendan mucho mejor la aplicación y la otra es sin usar variables, que es mejor,
ya que variable que se declara, queda almacenada en la memoria.
Si recuerdan en las aplicaciones de consolas usamos lo que es otro tipo de
conversión de cadena a tipo Single, en cambio en las aplicaciones de ventanas
podemos usar la función Val que nos captura el valor de la caja de texto.