Вы находитесь на странице: 1из 7

1. OBJETIVOS Manejo de diferentes controles. Programar objetos en diferentes eventos. Utilizacin de variables de memoria. Estructuras de control: Condicional 1.

l 1.1 CONSIDERACIONES INICIALES Debe crear un nuevo proyecto y realizar lo siguiente.

1.2 CREACIN DEL FORMULARIO (FrmCalificaciones.vb)

Se pide:

Se pide hallar el promedio y la puntuacin de un aprendiz, segn tres notas entre 0 y 5 ya que estas representan las calificaciones de un aprendiz del programa de formacin: Programacin de software.
Promedio 6- 10 4 5 0 3 Puntuacin A B C

Diseo del formulario: a) En el formulario inserte los controles necesarios desde el cuadro de Herramientas de Windows Form para obtener la siguiente apariencia:

NOTA_1:EL CONTR OL NUM ER I CUPDOW N Control que muestra una caja de texto con un valor numrico que podremos ir aumentando, disminuyendo al pulsar los botones para esta labor de que dispone el control. Un ejemplo para este control: Para ello debers crear unProcedimiento para uno de stoscontroles y escoger el EventoValueChanged Dim valor as Integer valor = NumericUpDown1.Value SELECT CASE valor CASE 5 To 10 NumericUpDown1.BackColor=Color.Gold CASE 10 To 20 NumericUpDown1.BackColor=Color.LimeGreen CASE ELSE NumericUpDown1.BackColor=NumericUpDown1.DefaultBackColor END SELECT

b) Ahora procedemos a establecer las Propiedades a los objetos, principalmente la propiedad


(Name):

Form1

Objeto

Propiedad
Name

Valor Asignado
FrmCalificaciones

TextBox1 NumericUpDown1

NumericUpDown2

NumericUpDown3

TextBox2 TextBox3 Button1 Button2 Button3

Name Name MiniMum Maximum ReadOnly Name MiniMum Maximum ReadOnly Name MiniMum Maximum ReadOnly Name ReadOnly Name ReadOnly Name Name Name

txtAprendiz NumericUpDown1 0 10 True NumericUpDown2 0 10 True NumericUpDown3 0 10 True txtPromedio True txtPuntuacion True btnAceptar btnNuevo btnSalir

NOTA_2: Tener presente las siguientes observaciones:

EL MTODO PERFORMCLICK ste mtodo Genera/ Invoca el evento Click para un Botn

CUIDADO, AQU HAY ERROR Dim 7Datos Dim Nombre+Grande Dim End

QU ES LO QUE HACE LA FUNCIN STRCONV? Devuelve una cadena convertida segn se ha especificado, siendo lo ms utilizado para maysculas, minsculas o la 1ra. En maysculas. Ejemplo: Dim texto as String texto=jos ponce StrConv(Texto, vbUpperCase) 'devuelve JOS PONCE. StrConv(Texto, vbLowerCase) devuelve jos ponce StrConv(Texto, vbProperCase) devuelve Jos Ponce CMO DECLARO UNA VARIABLE DE MEMORIA? La instruccin de declaracin para Variables es Dim. Su ubicacin y contenido determinan las Caractersticas de la variable. Ejemplo: Dim n1, n2 As Integer Dim x1, r1 As Long Dim v1, v2 As Byte, v3 As Date Dim prom As Double Dim sexo As Boolean Dim curso as String

FUNCIN VAL Devuelve los nmeros contenidos en una cadena como un valor Numrico del tipo adecuado. Ejemplo: Dim vresp As Double Devuelve 2457. vresp = Val("2457") ' Devuelve 2457. vresp = Val(" 2 45 7") Devuelve 24. vresp = Val("24 and 57")

QU ES UNA VARIABLE DE MEMORIA? Una variable es un dato temporal en memoria que tiene un nombre, un tipo de dato, un tiempo de vida y un alcance, los cuales lo dan la forma Como se declare sta.

POR QU HAY ERROR? Una variable debe cumplir con las siguientes reglas: Debe iniciar con un carcter Alfabtico. Debera contener solo caracteres alfabticos, dgitos y carcter de subrayado. El nombre no debe exceder a 255caracteres, etc. Debe ser nica en su alcance

c) Ahora proceda a escribir el cdigo correspondiente a los objetos necesarios:


PrivateSubFrmCalificaciones_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.Load ' Invoca / Ejecuta el Procedimiento BtnNuevo.Click Me.BtnNuevo.PerformClick() EndSub PrivateSub txtAprendiz_Leave(ByVal sender AsObject, ByVal e As System.EventArgs) Handles txtAprendiz.Leave txtAprendiz.Text = StrConv(txtAprendiz.Text, VbStrConv.Uppercase) EndSub

PrivateSub btnAceptar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAceptar.Click Dim N1 AsDouble, N2 AsDouble, N3 AsDouble Dim Promedio AsInteger N1 = NumericUpDown1.Value : N2 = NumericUpDown2.Value N3 = NumericUpDown3.Value Promedio = CInt((N1 + N2 + N3) / 3) txtPromedio.Text = Str(Promedio) If Promedio >= 6 And Promedio <= 10 Then txtPuntuacion.Text = "A" ElseIf Promedio >= 4 And Promedio <= 5 Then txtPuntuacion.Text = "B" ElseIf Promedio >= 0 And Promedio <= 3 Then txtPuntuacion.Text = "C" Else MsgBox("Error de datos", MsgBoxStyle.Critical, "Mensaje") EndIf EndSub

Aportaciones

Retencin

PrivateSub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click Me.txtAprendiz.Clear() Me.NumericUpDown1.Value = 0 Me.NumericUpDown2.Value = 0 Me.NumericUpDown3.Value = 0 Me.txtPromedio.Clear() Me.txtPuntuacion.Clear() Me.txtAprendiz.Focus() EndSub PrivateSub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() EndSub

1.2

CREACIN DEL FORMULARIO (FrmEmpleados.vb)

Se pide: Desarrollar una aplicacin que permita calcular las boletas de pagos de los trabajadores de una Empresa Familiar. Debe ingresar el cdigo del trabajador, apellidos, nombres, seleccionar la cargo (Gerente, Administrador, Contador), Cargo Sueldo Categora Bonificacin luego de seleccionar el Gerente 2.600.000 A1 10% del Sueldo cargo deber mostrar el Administrador 2.200.000 sueldo respectivo, as A2 15% del Sueldo mismo deber preguntar si Contador 1.200.000 A3 20% del Sueldo desea adelanto Si No, Si responde S, proceder a ingresar el adelanto respectivo, considerando que ste no debe superar el 25% del Sueldo; luego deber seleccionar Categora (A1, A2, A3), segn la categora seleccionada se calcular su bonificacin; luego seleccionar los aportes (Sena, IVA), segn los aportes seleccionadas se calcular el monto correspondiente; finalizado ello nos deber calcular el Total Neto a Pagar al trabajador. Para el Sueldo, Bonificacin y aportes deber guiarse de la siguiente tabla:

SENA
Diseo del formulario: Imp. Renta a) En el formulario inserte los controles necesarios desde el cuadro de Herramientas de Windows Form: Paraobtener la siguiente apariencia (El texto ubicado en los TexBox es para orientacin.)

7% Total Hon. 10% TotalHon.

b) Ahora procedemos a establecer la Propiedad (Name) a los siguientes objetos:

Objeto
Form1 TextBox1 TextBox2 TextBox3 ComboBox1 TextBox4 TextBox5 TextBox6 TextBox7 TextBox8 TextBox9 TextBox10 Radiobutton1 Radiobutton2 Radiobutton3 checkBox1 checkBox2 Button1 Button2 Button3

Propiedad
Name Name Name Name Name Name Name Name Name Name Name Name Name Name Name Name Name Name Name Name

Valor Asignado
FrmEmpleados txtCodigo txtApellidos txtNombres cboCargo txtSueldo txtAvance txtBonificacion txtHonorarios txtSena txtIva txtNeto rbtnCatA1 rbtnCatA2 rbtnCatA3 chkSena chkIva btnCalcular btnNuevo btnSalir

NOTA: Establezca las dems propiedades que usted desee.


NOTA_3: Ten presente las siguientes observaciones:

CMO ASIGNO VALOR A UNA VARIABLE? Para asignar un valor a una variable utilizaremos el operador de asignacin: el signo igual ( = ), situando a su izquierda la variable a Asignar, y a su derecha el valor. Ejemplo: Dim Cuenta As Integer Cuenta = 875 Otros ejemplos: Dim ImporteFac As Integer Dim Precio As Double Dim Valor As String Dim FhActual As Date Dim FhNueva As Date Dim FhHora As Date Dim Correcto As Boolean ImporteFac = 875 Precio = 50.75 Valor = "mesa" fechas mes/da/ao FhActual = #1/05/2013# fechas da/mes/ao FhNueva = "24/12/2013" FhHora = #11:45:00 PM# ' asignar una variable a otra Dim NuevaCadena As String NuevaCadena = Valor Variables lgicas Correcto = True SELECT CASE Cuando compara una misma expresin con varios valores diferentes, puede utilizar las instrucciones Select...Case como alternativa a las instrucciones If...Then...Else. A diferencia de las instrucciones If y ElseIf, que pueden evaluar una expresin diferente en cada instruccin, la instruccin Select evala una nica expresin una sola vez y la utiliza para cada Comparacin. Ejemplo 5: Compare ste ejemplo con el anterior utilizando: IFThenelse Dim nivel As Byte Dim sueldo As Double nivel=3 SELECT CASE nivel CASE 1 sueldo=3000 CASE 2 sueldo=2000 CASE 3 sueldo=3000 CASE ELSE sueldo=0 END SELECT

QU SON LAS ESTRUCTURAS DE CONTROL? Las estructuras de control le permiten controlar el flujo de Ejecucin del programa. Tenemos dos tipos de estructuras de control: Estructuras de Decisin: IfThenElse Select Case IF...THEN...ELSE Decisin Simple Ejemplo 1: Dim psw As string =123 IF psw=123 THEN msgbox (Bien) Ejemplo 2: Dim N1, N2, rP, rD as int16 N1= 12 N2=3 IF N2 <> 0 THEN rP= N1 * N2 rD= N1/ N2 END IF

Decisin Doble: Ejemplo 3: Dim psw As string =123 IF psw = 123 THEN msgbox (Bien) ELSE Msgbox (Lo siento...) END IF Probar condicionesadicionales si la primera condicin es False Ejemplo 4: Dim nivel As Byte Dim sueldo As Double nivel=3 IF nivel=1 THEN sueldo=3000 ELSEIF nivel=2 THEN sueldo=2000 ELSEIF nivel=3 THEN sueldo=3000 ELSE sueldo=0 ENDIF

QU ES UNA CONSTANTE? Al igual que las variables, una constante es un elemento del lenguaje que guarda un valor, pero que en este caso y como su propio nombre indica, dicho valor ser permanente a lo largo de la ejecucin del programa, no pudiendo ser modificado. CONSTANTE? Const Color As String = "Azul" Const Moneda As Double = 120.48 VARIABLES VS. CONSTANTES: Var: Se declaran con Dim Const: Se declaran con Static Var: Los valores cambian mientras se ejecuta la aplicacin Const: Los valores NO cambian mientras se ejecuta la aplicacin Var: Utilizan ms memoria que las constantes. Const: Utilizan menos memoria que las variables. DIM STATIC: DECLARANDO EL PERODO DE DURACIN Qu diferencia hay en declarar una variable con Dim o Static El perodo de duracin de una variable representa el tiempo durante el cual la variable est disponible para que pueda ser utilizada. Una variable local declarada con una instruccin Dim slo existe durante la ejecucin del procedimiento. Cuando finaliza el procedimiento, todas sus variables locales desaparecen y sus valores se pierden. No obstante, si se declara una variable local con la palabra clave Static, sta seguir existiendo y conservar su valor aunque finalice el procedimiento.

c) Ahora proceda a escribir el cdigo correspondiente a los objetos necesarios:


PrivateSub FrmEmpleados_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.Load cboCargo.Items.Add("Gerente") CboCargo.Items.Add("Administrador") CboCargo.Items.Add("Contador") BtnNuevo.Focus() EndSub

PrivateSub cboCargo_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboCargo.SelectedIndexChanged SelectCase cboCargo.SelectedIndex Case 0 txtSueldo.Text = 2600000 Case 1 txtSueldo.Text = 2200000 Case 2 txtSueldo.Text = 1200000 EndSelect ' Funcin MsgBox() para mostrar un cuadro de mensaje Dim Mensaje, Estilo, Titulo, Rpta AsString Mensaje = "Solicitar Avance?" Estilo = MsgBoxStyle.YesNo + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton1 Titulo = "Adelanto del Empleado" Rpta = MsgBox(Mensaje, Estilo, Titulo) If Rpta = vbYes Then txtAvance.Enabled = True txtAvance.Focus() Else txtAvance.Enabled = False EndIf EndSub PrivateSub txtAvance_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlestxtAvance.TextChanged Dim Maxsueldo AsDouble Maxsueldo = Val(txtSueldo.Text) * 0.25 If Val(txtAvance.Text) > Maxsueldo Then MsgBox ("El avance no es permitido") txtAvance.Text = "" txtAvance.Focus() EndIf EndSub PrivateSub rbtnCatA1_Click(ByVal sender AsObject, ByVal e As System.EventArgs) Handles rbtnCatA1.Click txtBonificacion.Text = Val(txtSueldo.Text) * 0.1 EndSub PrivateSub rbtnCatA2_Click(ByVal sender AsObject, ByVal e As System.EventArgs) Handles rbtnCatA2.Click txtBonificacion.Text = Val(txtSueldo.Text) * 0.15 EndSub PrivateSub rbtnCatA3_Click(ByVal sender AsObject, ByVal e As System.EventArgs) Handles rbtnCatA3.Click txtBonificacion.Text = Val(txtSueldo.Text) * 0.2 EndSub PrivateSub txtBonificacion_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtBonificacion.TextChanged txtHonorarios.Text = Val(txtSueldo.Text) + Val(txtBonificacion.Text) EndSub PrivateSub chkIva_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkIva.CheckedChanged If chkIva.Checked = TrueThen txtIva.Text = Val(txtHonorarios.Text) * 0.1 Else txtIva.Text = 0 EndIf EndSub PrivateSub chkSena_Click(ByVal sender AsObject, ByVal e As System.EventArgs) Handles chkSena.Click If chkSena.Checked = TrueThen txtSena.Text = Val(txtHonorarios.Text) * 0.07 Else txtSena.Text = 0 EndIf EndSub PrivateSub btnCalcular_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalcular.Click Dim desc AsDouble desc = Val(txtAvance.Text) + Val(txtSena.Text) + Val(txtIva.Text)

EndSub

txtNeto.Text = Val(txtHonorarios.Text) - desc

PrivateSub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click txtCodigo.Text = "" : txtApellidos.Text = "" txtNombres.Text = "" : txtSueldo.Text = "" txtAvance.Text = "" : txtBonificacion.Text = "" txtHonorarios.Text = "" : txtSena.Text = "" txtIva.Text = "" : txtNeto.Text = "" cboCargo.Text = "" rbtnCatA1.Checked = False : rbtnCatA2.Checked = False rbtnCatA3.Checked = False : chkSena.Checked = False chkIva.Checked = False : txtCodigo.Focus() EndSub PrivateSub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() EndSub

Вам также может понравиться