Aplicación Nº 1 El ejercicio consiste en crear una aplicación que permita leer una fracción y de como resultado la fracción simplificada. Esto es, que halle la fracción irreductible equivalente.
Para el desarrollo de esta aplicación proceda a crear un nuevo formulario y luego vaya al Menú Formulario y elija la opción Crear conjunto de formularios (no se preocupe, pues no se apreciará nada en especial). Nuevamente vaya al Menú Formulario y elija la opción Agregar nuevo formulario. El Diseñador de formularios debe presentar una apariencia similar a la figura mostrada:
A continuación proceda a ubicar los siguientes controles sobre el primer formulario (Form1): 2 etiquetas 2 cajas de texto 2 botones de comando Seguidamente debe establecer las propiedades de los objetos según se indica: Form1 Name
FrmIngreso
Caption
Ingreso de datos
MaxButton
.F.-Falso
MinButton
.F.-Falso
Name
LblNumerador
Caption
Numerador?
Name
LblDenominador
Caption
Denominador?
Name
TxtNumerador
Value
0
Name
TxtDenominador
Value
0
Label1
Label2
Text1
Text2
Command1
Name
CmdSimplificar
Caption
Simplificar
Default
.T.-Verdadero
Command2 Name
CmdSalir
Cancel
.T.-Verdadero
Caption
Salir
A continuación proceda a ingresar el código que se muestra: Objeto: CmdSimplificar
Procedimiento: Click
nNumerador = Thisformset.FrmIngreso.TxtNumerador.Value nDenominador = Thisformset.FrmIngreso.TxtDenominador.Value If nNumerador < nDenominador Then nC = nNumerador Else nC = nDenominador EndIf Do While (nNumerador % nC != 0) Or (nDenominador % nC != 0) nC = nC - 1 EndDo nNumerador = nNumerador / nC nDenominador = nDenominador / nC Thisformset.FrmIngreso.Hide Thisformset.FrmSalida.Show Thisformset.Refresh
Objeto: CmdSalir
Procedimiento: Click
Release Thisformset Luego proceda a ubicar los siguientes controles sobre el segundo formulario (Form2): 1 etiqueta 1 caja de texto 1 botón de comando Seguidamente debe establecer las propiedades de los objetos según se indica: Form2 Name
FrmSalida
Caption
Salida
MaxButton
.F.-Falso
MinButton
.F.-Falso
Name
LblFraccion
Caption
Fracción simplificada:
Name
TxtFraccion
Alignment
2-Centro
Label1
Text1
Command1 Name
CmdVolver
Caption
Volver
A continuación proceda a ingresar el código que se muestra: Objeto: FrmSalida
Procedimiento: Activate
cNumerador = Str(nNumerador) cDenominador = Str(nDenominador) cFraccion = cNumerador + " / " + cDenominador Thisformset.FrmSalida.TxtFraccion.Value = cFraccion Thisformset.Refresh Objeto: CmdVolver
Procedimiento: Click
Thisformset.FrmSalida.Hide Thisformset.FrmIngreso.Show Thisformset.Refresh Finalmente proceda a ingresar el código que se indica a continuación: Objeto: Formset1
Procedimiento: Load
Public nNumerador Public nDenominador Public nC Objeto: Formset1
Thisformset.FrmSalida.Hide Thisformset.Refresh
Procedimiento: Init
Aplicación Nº 2 Este ejercicio consiste en elaborar una aplicación que acepte fechas como tres números (dd, mm, aaaa) y las visualice del modo usual. A manera de ejemplo considere lo siguiente:
Cuando el usuario haga click en el botón Salir o en el botón Cerrar de la barra de título del formulario, se debe confirmar si desea terminar la aplicación, tal como se observa en la figura siguiente:
En caso de que el usuario elija la opción Si, la aplicación debe terminar. Caso contrario, es decir si el usuario elige la opción No, se debe proseguir con la aplicación. Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario: 4 etiquetas 3 controles numéricos 1 caja de texto
3 botones de comando En seguida proceda a establecer las propiedades según se indica: Form1 Name
FrmFecha
Caption
Fecha en letras
MaxButton
.F.-Falso
MinButton
.F.-Falso
Name
LblDia
AutoSize
.T.-Verdadero
Caption
Día:
Name
LblMes
AutoSize
.T.-Verdadero
Caption
Mes:
Name
LblAnno
AutoSize
.T.-Verdadero
Caption
Año:
Name
LblEnLetras
AutoSize
.T.-Verdadero
Caption
En letras:
Label1
Label2
Label3
Label4
Spinner1 Name
SpnDia
SpinnerHighValue
31
SpinnerLowValue
1
Spinner2 Name
SpnMes
SpinnerHighValue
12
SpinnerLowValue
1
Spinner3 Name
SpnAnno
SpinnerHighValue
9999
SpinnerLowValue
0
Text1 Name
TxtEnLetras
Alignment
2-Centro
Command1 Name
CmdAceptar
Caption
\
Default
.T.-Verdadero
Command2 Name
CmdLimpiar
Caption
\
Command3 Name
CmdSalir
Cancel
.T.-Verdadero
Caption
\<Salir
Una vez establecidas las propiedades proceda a ingresar el código que se indica a continuación: Objeto: FrmFecha
Procedimiento: Load
Set Date French Set Century On Objeto: FrmFecha
Procedimiento: QueryUnload
#DEFINE vfpYesNo 4 #DEFINE vfpYes 6 #DEFINE vfpQuestion 32 If MessageBox("¿Desea terminar la aplicación?", ; vfpQuestion + vfpYesNo, "Pregunta") = vfpYes Then Release Thisform Else NoDefault EndIf Objeto: CmdAceptar
Procedimiento: Click
cBarra = "/" cFecha = Thisform.SpnDia.Text + cBarra + Thisform.SpnMes.Text ; + cBarra + Thisform.SpnAnno.Text dFecha = Ctod(cFecha) cNomDia = Cdow(dFecha) cDia = Str(Day(dFecha), 2) cMes = Cmonth(dFecha)
cAnno = Str(Year(dFecha), 4) cFecha = cNomDia + " " + cDia + " de " + cMes + " de " + cAnno Thisform.TxtEnLetras.Value = cFecha Thisform.Refresh Objeto: CmdLimpiar
Procedimiento: Click
Thisform.SpnDia.Value = 0 Thisform.SpnMes.Value = 0 Thisform.SpnAnno.Value = 0 Thisform.TxtEnLetras.Value = "" Thisform.SpnDia.Setfocus Thisform.Refresh Objeto: CmdSalir
Thisform.QueryUnload
Procedimiento: Click
Aplicación Nº 3 Este ejercicio consiste en elaborar un formulario que permita leer un número entero y visualice su tabla se multiplicar. Para construir la tabla de multiplicar vamos a utilizar un control cuadro de edición, el cual tiene propiedades similares a un cuadro de texto, pero permite escribir texto en líneas diferentes.
Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario: 1 etiqueta 1 caja de texto 1 cuadro de edición 1 botón de comandos En seguida proceda a establecer las propiedades según se indica: Form1 Name
FrmTabla
Caption
Tabla de multiplicar
MaxButton
.F.-Falso
MinButton
.F.-Falso
Name
LblNumero
Label1
Caption
Ingrese un número:
Name
TxtNumero
Alignment
2-Centro
Name
EdtTabla
ScrollBars
2-Vertical
Text1
Edit1
Command1 Name
CmdLimpiar
Caption
\
Default
.T.-Verdadero
Una vez diseñada la interfaz, proceda a ingresar el código que se indica a continuación: Objeto: TxtNumero
Procedimiento: InteractiveChange
nN = Val(Thisform.TxtNumero.Value) cS = "" For nI = 0 To 12 nP = nN * nI cS = cS + Str(nN) + " * " + Str(nI) + " = " + Str(nP) ; + Chr(13) Next Thisform.EdtTabla.Value = cS Thisform.Refresh
Objeto: CmdLimpiar
Thisform.TxtNumero.Value = "" Thisform.EdtTabla.Value = "" Thisform.Refresh
Procedimiento: Click