Mostrando entradas con la etiqueta Parcial Uno. Mostrar todas las entradas
Mostrando entradas con la etiqueta Parcial Uno. Mostrar todas las entradas

viernes, 5 de marzo de 2010

Instrumentos de Evaluación

Puedes acceder a esta dirección para bajar los instrumentos de evaluación de todas las prácticas.

Recuerda que el objetivo de disponer de las listas de cotejo es realizar una revisión previa a todas y cada una de tus practicas para que identifiques lo que se te va a evaluar, realizando así los ajustes necesarios.

Estoy cierto de que han estado realizado su máximo esfuerzo, por lo que esta ultima parte no la dejaran a la desidia.

Les recuerdo que la revisión de evaluación es el lunes, por lo que deberán presentarse con las listas de cotejo impresas y con sus nombres(requisito).

Si crees que puedes o que no puedes… igual tienes razón..!

 

lunes, 1 de marzo de 2010

P1E14 – Menú sencillo

Este ejercicio consiste en el uso del Editor de Menus.

Se puede seleccionar color de fondo, color de texto, y diferentes mensajes, los diferentes valores al ser seleccionados deben aplicarse a la etiqueta, además de estar palomeando (vbChecked) las opciones elegidas.

image

En el menú de mensajes la ultima opción aparece inhabilitada, su estado cambia al momento en que se hace clic en Acerca de.

image

En la opción Acerca de… aparecen en un MsgBox los nombres completos de los autores de dicho formulario.

Creditos: lemm

P1E13 – Colores con scrollbar

Se te recomienda antes de hacer cualquier ejercicio leerlo completamente, al estarlo realizando anota todas las preguntas o dudas que te surjan para su aclaración en clase, asi como los elementos nuevos que descubras.

El archivo del formulario de este proyecto se puede llamar frmColores.frm.

En este ejemplo se dispone de tres barras de desplazamiento con las que pueden controlarse las componentes RGB del color del fondo y del color del texto de un control label. Dos botones de opción permiten determinar si los valores de las barras se aplican al fondo o al texto. Cuando se cambia del texto al fondo o viceversa los valores de las barras de desplazamiento (y la posición de los cursores) cambian de modo acorde.

image

A la derecha de las barras de desplazamiento tres cajas de texto contienen los valores numéricos de los tres colores (entre 0 y 255). A la izquierda tres labels indican los colores de las tres barras.

A continuación se muestra una tabla con los controles y las propiedades utilizadas en el este ejemplo.

Form1

Name frmColores
Caption Colores

Label1

Name lblCuadro
Caption Visual Basic
Font MS Sans Serif, Bold, 24

Command1

Name cmdSalir
Caption Salir
Font MS Sans Serif, Bold, 10

Option1*

Name optColor
Index 0, 1
Caption Fondo, Texto
Font MS Sans Serif, Bold, 10

*copiar y pegar botón creando matriz de controles, lo único diferente es el index.

hsbScroll1*

Name hsbColor
Min 1
Max 255
SmallChange 1
LargeChange 16
Index 0, 1, 2
Value 0

*copiar y pegar scrollbar creando matriz de controles (son tres).

Text1*

Name txtColor
Text 0
Locked True
Index 0, 1, 2

*copiar y pegar textbox creando matriz de controles (son tres).

Label2*

Name lblColor
Caption Rojo, Verde, Azul
Index 0,1, 2
Font MS Sans Serif, 10

*copiar y pegar label creando matriz de controles (son tres).

Una característica importante de este ejemplo es que se han utilizado vectores (arrays) de controles. Las tres barras se llaman hsbColor y se diferencian por la propiedad Index, que toma los valores 0, 1 y 2. También las tres cajas de texto, las tres labels y los dos botones de opción son arrays de controles. Para crear un array de controles basta crear el primero de ellos y luego hacer Copy y Paste tantas veces como se desee, respondiendo afirmativamente al cuadro de diálogo que pregunta si desea crear un array.

El procedimiento Sub que contiene el código que gestiona un evento de un array es único para todo el array, y recibe como argumento la propiedad Index. De este modo que se puede saber exactamente en qué control del array se ha producido el evento. Así pues, una ventaja de los arrays de controles es que pueden compartir el código de los eventos y permitir un tratamiento conjunto por medio de bucles for. A continuación se muestra el código correspondiente a los procedimientos que tratan los eventos de este ejemplo.

Option Explicit

Public Brojo, Bverde, Bazul As Integer

Public Frojo, Fverde, Fazul As Integer

Private Sub cmdSalir_Click()

End

End Sub

Private Sub Form_Load()

Brojo = 0

Bverde = 0

Bazul = 0

Frojo = 255

Fverde = 255

Fazul = 255

lblCuadro.BackColor = RGB(Brojo, Bverde, Bazul

lblCuadro.ForeColor = RGB(Frojo, Fverde, Fazul)

End Sub

Private Sub hsbColor_Change(Index As Integer)

Dim i As Integer

If optColor(0).Value = True Then

lblCuadro.BackColor = RGB(hsbColor(0).Value, hsbColor(1).Value, _ hsbColor(2).Value)

For i = 0 To 2

txtColor(i).Text = hsbColor(i).Value

Next i

Else

lblCuadro.ForeColor = RGB(hsbColor(0).Value, hsbColor(1).Value, hsbColor(2).Value)

For i = 0 To 2

txtColor(i).Text = hsbColor(i).Value

Next i

End If

End Sub

Private Sub optColor_Click(Index As Integer)

If Index = 0 Then ‘Se pasa a cambiar el fondo

Frojo = hsbColor(0).Value

Fverde = hsbColor(1).Value

Fazul = hsbColor(2).Value

hsbColor(0).Value = Brojo

hsbColor(1).Value = Bverde

hsbColor(2).Value = Bazul

Else ’Se pasa a cambiar el texto

Brojo = hsbColor(0).Value

Bverde = hsbColor(1).Value

Bazul = hsbColor(2).Value

hsbColor(0).Value = Frojo

hsbColor(1).Value = Fverde

hsbColor(2).Value = Fazul

End If

End Sub

El código de este ejemplo es un poco más complicado que el de los ejemplos anteriores y requiere unas ciertas explicaciones adicionales adelantando cuestiones que se verán posteriormente:

  1. La función RGB() crea un código de color a partir de sus argumentos: los componentes RGB (Red, Green and Blue). Estos componentes, cuyo valor se almacena en un byte y puede oscilar entre 0 y 255, se determinan por medio de las tres barras de desplazamiento.
  2. El color blanco se obtiene con los tres colores fundamentales a su máxima intensidad. El color negro se obtiene con los tres colores RGB a cero. También se pueden introducir con las constantes predefinidas vbWhite y vbBlack, respectivamente.
  3. Es importante disponer de unas variables globales que almacenen los colores del fondo y del texto, y que permitan tanto guardar los valores anteriores de las barras como cambiar éstas a sus nuevos valores cuando se cliquea en los botones de opción. Las variables globales, definidas en la parte de definiciones generales del código, fuera de cualquier procedimiento, son visibles desde cualquier parte del programa. Las variables definidas dentro de una función o procedimiento sólo son visibles desde dentro de dicha función o procedimiento (variables locales).
  4. La función hsbColor_Change(Index As Integer) se activa cada vez que se cambia el valor en cualquiera de las barras de desplazamiento. El argumento Index, que Visual Basic define automáticamente, indica cuál de las barras del array es la que ha cambiado de valor (la 0, la 1 ó la 2). En este ejemplo dicho argumento no se ha utilizado, pero está disponible por si se hubiera querido utilizar en el código.

P1E12 – Calcular sueldo neto de trabajador

Se te recomienda antes de hacer cualquier ejercicio leerlo completamente, al estarlo realizando anota todas las preguntas o dudas que te surjan para su aclaración en clase, así como los elementos nuevos que descubras.

Recuerda que no se trata de copiar y pegar o de transcribir contenidos, ante todo es descubrir su operatividad y comprobar su funcionalidad.

Se desea elaborar la boleta de pago de los trabajadores de una fábrica. Para ello se cuenta con los siguientes datos de entrada:

Apellidos y nombres del trabajador

Sueldo básico

Horas extras trabajadas

Además, se sabe que los trabajadores laboran en dos turnos: diurno y nocturno. Y que la tarifa por las horas extras diurnas es de 10 pesos y por las horas extras nocturnas es de 15 pesos.

Los descuentos a aplicar son sobre el sueldo básico y se obtienen de la siguiente manera:

dblRenta = dblSueldoBasico * 0.1

dblFonavi = dblSueldoBasico * 0.07

dblISR = dblSueldoBasico * 0.03

Finalmente el sueldo neto del trabajador se calcula mediante las siguientes expresiones:

dblIngresos = dblSueldoBasico + intHorasExtras * dblPagoHoraExtra

dblEgresos = dblRenta + dblFonavi + dblISR

dblSueldoNeto = dblIngresos - dblEgresos

El diseño de la interfaz deberá ser similar a la figura mostrada:

clip_image002

Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario:

2 marcos

5 etiquetas

8 cajas de texto

2 botones de opción

3 casillas de verificación

3 botones de comando

Luego, proceda a establecer las propiedades según se indica a continuación:

Form1

Nombre

frmBoletaDePago

BorderStyle

3-Fixed Dialog

Caption

Boleta de pago

Moveable

False

Label1

Nombre

lblTrabajador

AutoSize

True

Caption

Trabajador:

Label2

Nombre

lblSueldoBasico

AutoSize

True

Caption

Sueldo Bruto

Label3

Nombre

lblHorasExtras

AutoSize

True

Caption

Horas extras:

Label4

Nombre

lblPagoHoraExtra

AutoSize

True

Caption

Pago hora extra

Label5

Nombre

lblSueldoNeto

AutoSize

True

Caption

Sueldo neto

Text1

Nombre

txtTrabajador

Text

Text2

Nombre

txtSueldoBasico

Text

Text3

Nombre

txtHorasExtras

Text

Text4

Nombre

txtPagoHoraExtra

BackColor

&H80000004&

Text

Text5

Nombre

txtRenta

BackColor

&H80000004&

Locked

True

Text

Text6

Nombre

txtFonavi

BackColor

&H80000004&

Locked

True

Text

Text7

Nombre

txtISR

BackColor

&H80000004&

Locked

True

Text

Text8

Nombre

txtSueldoNeto

BackColor

&H80000004&

Locked

True

Text

option1

Nombre

optDiurno

Caption

Diurno

Value

True

option2

Nombre

optNocturno

Caption

Nocturno

Value

False

Check1

Nombre

chkRenta

Caption

Renta

Check2

Nombre

chkFonavi

Caption

Fonavi

Check3

Nombre

chkISR

Caption

ISR

Command1

Nombre

cmdAceptar

Caption

&Aceptar

Default

True

Command2

Nombre

cmdLimpiar

Caption

&Limpiar

Command3

Nombre

cmdSalir

Cancel

True

Caption

&Salir

Una vez establecidas las propiedades, proceda a ingresar el código que se indica a continuación:

Private Sub cmdAceptar_Click()

Dim dblSueldoBasico As Double

Dim intHorasExtras As Integer, dblPagoHoraExtra As Double

Dim dblRenta As Double, dblFonavi As Double, dblISR As Double

Dim dblIngresos As Double, dblEgresos As Double

Dim dblSueldoNeto As Double

dblSueldoBasico = Val(txtSueldoBasico.Text)

intHorasExtras = Val(txtHorasExtras.Text)

If optDiurno.Value Then

dblPagoHoraExtra = 10

End If

If optNocturno.Value Then

dblPagoHoraExtra = 15

End If

If chkRenta.Value Then

dblRenta = dblSueldoBasico * 0.1

Else

dblRenta = 0

End If

If chkFonavi.Value Then

dblFonavi = dblSueldoBasico * 0.07

Else

dblFonavi = 0

End If

If chkISR.Value Then

dblISR = dblSueldoBasico * 0.03

Else

dblISR = 0

End If

dblIngresos = dblSueldoBasico + intHorasExtras * dblPagoHoraExtra

dblEgresos = dblRenta + dblFonavi + dblISR

dblSueldoNeto = dblIngresos - dblEgresos

txtPagoHoraExtra.Text = Str(dblPagoHoraExtra)

txtRenta.Text = Str(dblRenta)

txtFonavi = Str(dblFonavi) : txtISR = Str(dblISR)

txtSueldoNeto = Str(dblSueldoNeto)

End Sub

Private Sub cmdSalir_Click()

End

End Sub

Guarde y ejecute su aplicación.

Anote sus observaciones:

- Que descubriste que sucede con el siguiente segmento de código:

If optDiurno.Value Then

dblPagoHoraExtra = 10

End If

If optNocturno.Value Then

dblPagoHoraExtra = 15

End If

- Consideras que es lo mismo utilizar opt y/o utilizar chk.

- En el siguiente segmento de código existe una condición, cuando se ejecutará la línea dblFonavi = 0.

If chkFonavi.Value Then

dblFonavi = dblSueldoBasico * 0.07

Else

dblFonavi = 0

End If

- Habiendo concluido el ejercicio. Describe la parte consideras necesario volver a repasar:

P1E11 Microsoft Flex Grid

Se te recomienda antes de hacer cualquier ejercicio leerlo completamente, al estarlo realizando anota todas las preguntas o dudas que te surjan para su aclaración en clase, así como los elementos nuevos que descubras.

Recuerda que no se trata de copiar y pegar o de transcribir contenidos, ante todo es descubrir su operatividad y comprobar su funcionalidad.

El menú de un restaurante rápido se muestra a continuación:

MENÚ

PRECIO

Hamburguesa

2.50

Cerveza

4.00

Gaseosa

3.00

Ensalada

1.50

Salchichas

2.00

Refresco

1.00

Sopa

1.50

Postre

1.50

Se desea construir una aplicación que calcule las ventas totales al final del día, así como los impuestos a pagar del 16%.

La interfaz de entrada y salida deberá ser similar a la figura mostrada a continuación:

clip_image002

Para el diseño del cuadro de menú utilizaremos el control Microsoft Hierarchical FlexGrid. Para tal fin, seleccione el Menú Proyecto y elija la opción Componentes:

clip_image004

A continuación active la casilla de verificación Microsoft Hierarchical FlexGrid Control 6.0 OLEDB y haga click sobre el botón Aceptar. En seguida este control se añadirá al Cuadro de Herramientas.

Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario:

10 etiquetas

10 cajas de texto

1 control MSHFlexGrid

3 botones de comando

En seguida, elabore el diseño de entrada y salida. Para ello proceda a establecer las propiedades según se indica a continuación:

Form1

Nombre

frmRestaurante

BorderStyle

3-Fixed Dialog

Caption

Restaurante

Moveable

False

StartUpPosition

2-CenterScreen

Label1

Nombre

lblHamburguesa

AutoSize

True

Caption

Hamburguesa:

Label2

Nombre

lblCerveza

AutoSize

True

Caption

Cerveza:

 

Label3

Nombre

lblGaseosa

AutoSize

True

Caption

Gaseosa:

Label4

Nombre

lblEnsalada

AutoSize

True

Caption

Ensalada:

Label5

Nombre

lblSalchichas

AutoSize

True

Caption

Salchichas:

 

Label6

Nombre

lblRefresco

AutoSize

True

Caption

Refresco:

 

Label7

Nombre

lblSopa

AutoSize

True

Caption

Sopa:

 

Label8

Nombre

lblPostre

AutoSize

True

Caption

Postre:

 

Label9

Nombre

lblVentaTotal

Caption

Venta Total

 

Label10

Nombre

lblImpuesto

Caption

Impuesto

 

MSHFlexGrid1

Nombre

grdMenu

Font

Arial (Negrita 10)

FontFixed

Arial (Negrita 10)

 

Text1

Nombre

txtHamburguesa

Text

 

 

Text2

Nombre

txtCerveza

Text

 

Text3

Nombre

txtGaseosa

Text

 

Text4

Nombre

txtEnsalada

Text

 

Text5

Nombre

txtSalchichas

Text

 

Text6

Nombre

txtRefresco

Text

 

Text7

Nombre

txtSopa

Text

 

Text8

Nombre

txtPostre

Text

 

Text9

Nombre

txtVentaTotal

Locked

True

Text

 

Text10

Nombre

txtImpuesto

Locked

True

Text

 

Command1

Nombre

cmdAceptar

Caption

&Aceptar

Command2

Nombre

cmdLimpiar

Caption

&Limpiar

Command3

Nombre

cmdSalir

Caption

&Salir

Picture

C:\Archivos de programa\Microsoft Visual

Studio\Common\Graphics\Icons\Arrows\Point04.ico

Style

1-Graphical

En primer lugar debemos cargar los datos a la cuadrícula. Esto lo vamos a realizar en tiempo de ejecución al momento de cargarse en memoria el formulario. Para ello, haga doble click sobre el formulario y añada el siguiente código:

Private Sub Form_Load()

grdMenu.Cols = 2

grdMenu.Rows = 9

grdMenu.FixedCols = 0

grdMenu.FixedRows = 1

grdMenu.TextArray(0) = “Menú”

grdMenu.TextArray(1) = “Precio”

grdMenu.TextArray(2) = “Hamburguesa”

grdMenu.TextArray(3) = “2.50”

grdMenu.TextArray(4) = “Cerveza”

grdMenu.TextArray(5) = “4.00”

grdMenu.TextArray(6) = “Gaseosa”

grdMenu.TextArray(7) = “3.00”

grdMenu.TextArray(8) = “Ensalada”

grdMenu.TextArray(9) = “1.50”

grdMenu.TextArray(10) = “Salchichas”

grdMenu.TextArray(11) = “2.00”

grdMenu.TextArray(12) = “Refresco”

grdMenu.TextArray(13) = “1.00”

grdMenu.TextArray(14) = “Sopa”

grdMenu.TextArray(15) = “1.50”

grdMenu.TextArray(16) = “Postre”

grdMenu.TextArray(17) = “1.50”

End Sub

Luego debemos añadir el código que se encargará de realizar los cálculos. Para tal fin haga doble clic sobre el botón Aceptar y proceda a ingresar lo siguiente:

Private Sub cmdAceptar_Click()

Dim intHamburguesa As Integer, intCerveza As Integer

Dim intGaseosa As Integer, intEnsalada As Integer

Dim intSalchichas As Integer, intRefresco As Integer

Dim intSopa As Integer, intPostre As Integer

Dim dblVentaTotal As Double, dblImpuesto As Double

intHamburguesa = Val(txtHamburguesa.Text)

intCerveza = Val(txtCerveza.Text)

intGaseosa = Val(txtGaseosa.Text)

intEnsalada = Val(txtEnsalada.Text)

intSalchichas = Val(txtSalchichas.Text)

intRefresco = Val(txtRefresco.Text)

intSopa = Val(txtSopa.Text)

intPostre = Val(txtPostre.Text)

dblVentaTotal = intHamburguesa * 2.5 + intCerveza * 4.0 _

+ intGaseosa * 3.0 + intEnsalada * 1.5 + intSalchichas * 2.0 _

+ intRefresco * 1.0 + intSopa * 1.5 + intPostre * 1.5

dblImpuesto = 0.18 * dblVentaTotal

txtVentaTotal.Text = Str(dblVentaTotal)

txtImpuesto.Text = Str(dblImpuesto)

End Sub

Luego, haga doble clic sobre el botón Limpiar y añada el siguiente código:

Private Sub cmdLimpiar_Click()

txtHamburguesa.Text = “” : txtCerveza.Text = “”

txtGaseosa.Text = “” : txtEnsalada.Text = “”

txtSalchichas.Text = “” : txtRefresco.Text = “”

txtSopa.Text = “” : txtPostre.Text = “”

txtVentaTotal.Text = “” : txtImpuesto.Text = “”

txtHamburguesa.SetFocus

End Sub

A continuación haga doble clic sobre el botón Salir y añada el siguiente código:

Private Sub cmdSalir_Click()

End

End Sub

Guarde y ejecute su aplicación.

Al terminar conteste los siguientes puntos:

  • Señale como se agrega un componente que no aparece en la Caja de Herramientas común.
  • Cuando utilizarías la propiedad Locked de un Textbox:
  • Para que se utiliza la propiedad Picture en un Command. Para su correcto funcionamiento, de que otra propiedad requiere.
  • Cual es la función que desempeñan los dos puntos en el procedimiento de Limpiar.
  • De esta practica, describe lo que no entendiste o que consideras requiere de más práctica.