”
Computación e Informática Programación Distribuida y Concurrente
GUÍA DE LABORATORIO N° 04
OBJETIVOS:
Creación y uso de Array Bidimensionales.
Creación y uso de procedimientos con parámetros.
Uso de variables de memoria con diferentes alcances.
Creación de un Formulario de Inicio de Sesión.
Debe abrir su proyecto anterior y deberá agregar los formularios para las aplicaciones siguientes:
a) En el formulario inserte los controles necesarios y establezca las propiedades necesarias para obtener la
siguiente apariencia:
b) Ahora procedemos a establecer la Propiedades a los objetos según la gráfica anterior, para luego establecer
propiedad (NAME) tal como se indica a continuación:
Declare las variables y/o procedimientos en la sección PRIVATE tal como se observa a continuación:
{ Private declarations }
listar:boolean;
alumnos:Array[1..10,1..9] of string;
i, t, pos:Byte;
sexo:String;
procedure mostrardatos;
procedure limpiar;
procedure HabilitaBotones(sw:Boolean);
procedure habilitacontroles(estado:Boolean);
Objeto: TfrmArrayRegistro Evento: OnCreate
procedure TfrmArrayRegistro.FormCreate(Sender: TObject);
begin
// Agregando items al combobox cboEspecialidad
cboEspecialidad.Items.Add('Computación e Informática');
cboEspecialidad.Items.Add('Secretariado Ejecutivo');
cboEspecialidad.Items.Add('Contabilidad');
cboEspecialidad.Items.Add('Electricidad');
cboEspecialidad.Items.Add('Electrónica');
cboEspecialidad.Items.Add('Construcción Civil');
updown1.min := 1;
updown1.max := 6;
edciclo.ReadOnly := True;
HabilitaControles(False);
HabilitaBotones(True);
// Estableciendo el nro. de columnas y filas de la grilla
stringgrid1.ColCount:=9;
stringgrid1.RowCount:=10;
// Fijando la primera columna y fila para uso de encabezados
stringgrid1.FixedCols:=1;
stringgrid1.FixedRows:=1;
//Encabezados para las columnas
//grilla.Celda[Columna,fila]:=ValorTipoCadena
//Nótese que la Col y Fil empiezan desde cero
stringgrid1.cells[1,0]:='Codigo';
stringgrid1.cells[2,0]:='Apellidos';
stringgrid1.cells[3,0]:='Nombres';
stringgrid1.cells[4,0]:='Dirección';
stringgrid1.cells[5,0]:='Sexo';
stringgrid1.cells[6,0]:='Teléfono';
stringgrid1.cells[7,0]:='Especialidad';
stringgrid1.cells[8,0]:='Ciclo';
stringgrid1.cells[9,0]:='e-mail';
i:=1;
listar:=false;
end;
Objeto: edApellidos Evento: onKeyPress
procedure TfrmArrayRegistro.edApellidosKeyPress(Sender: TObject; var Key: Char);
begin
If key=#13 Then
begin
edNombres.setfocus;
end;
end;
Objeto: edApellidos Evento: onExit
procedure TfrmArrayRegistro.edApellidosExit(Sender: TObject);
begin
edApellidos.Text :=uppercase(edApellidos.Text);
end;
a) En el formulario inserte los controles necesarios y establezca las propiedades necesarias para obtener la
siguiente apariencia:
// implementation
// {$R *.dfm}
Objeto: btnAceptar Evento: OnClick
procedure TfrmInicioSesion.btnAceptarClick(Sender: TObject);
begin
// Nótese que la contraseña es JOSELO con mayúsculas
if upperCase(edpassword.text)='JOSELO' then
Begin
frmArrayregistro.show;
// Luego deberá mostrar el Form PrmPrincipal "Menú"
frmInicioSesion.hide;
end
else
Begin
ShowMessage('Intento Nro. ' + inttostr(nveces+1) + ', Acceso Denegado,
Usuario: ' + edUsuario.Text);
nveces:=nveces + 1;
If nveces >= 3 Then
Begin
ShowMessage('Lo siento, tuvo sus 3 oportunidades... para otra vez será');
Close;
end;
End;
end;
Implemente Usted los procedimientos para Editar, Eliminar, etc. del formulario FrmArrayRegistro.
Implemente el ó los procedimientos para que se muestren los datos en la grilla “StringGrid” del Formulario
FrmArrayRegistro.
Investigue acerca de cómo validar los datos de entrada para ser implementados en el formulario
FrmArrayRegistro:
No debe permitir dejar vació ningún atributo del alumno antes de guardar.
Sólo se deberá ingresar número o letras donde corresponda. Ejemplo: en Apellidos no debe permitir el
ingreso de números.
Deberá hacer los cambios necesarios para que el Formulario de inicio de sesión valide usuario y password antes
de ingresar al sistema.
Diseñe Usted un formulario de presentación para su Aplicación, éste deberá tener animación y/o algunos otros
cambios que usted considere convenientes, deberá guardarlo como: Presentacion.pas, éste deberá mostrarse
unos segundos después del Formulario FrmInicioSesion, para luego mostrar el Menú Principal.