Post on 12-Aug-2015
Capitulo 0 - Parte I
Comenzar C++ Builder
Universidad Autónoma Gabriel Rene Moreno
FICCTSemestre I/2013
Ing. Mary Dunnia López N.
1. Objetivos
Iniciar al estudiante en el lenguaje de programacion C++ Builder.
Conocer y utilizar los objetos basicos de programacion en C++ Builder.
2. Motivacion
El lenguaje C es la base de muchos lenguajes de programacion de hoy en dia. Este es el caso de C++
Concer C++ habre posibilidades de trabajar con paradigmas nuevos, tales como la POO.
Analisis
Diagrama de Flujo +Pseudo-Codigo
Prueba de Escritorio
Codificado y DepuradoEn un Lenguaje
PruebaY Validacion
Aplicacion
Programación
C++
.EXE
3. Elementos del Ambiente C++ Builder
123 4
3.1 Crear un Nuevo Proyecto
File New
Abrir Enbarcadero1
2
3.2 Configuraciones de Entorno
Visualizar las 4 áreas básicas de C++ builder.
Menu View Proyect Manager Menu View Tool Palette Menu View Object Inspector Menu View Toggle Form/Unit
Configurar ambiente de programación Menu Tools Options Ver las siguientes pestanas.
Editor Options: Display, etc
3.3 Ventana Editor de Codigo
En el formulario hacer clic en cualquier parte del formulario donde no haya un objeto y luego presionar botón derecho del Mouse.
3.4 Grabar un proyecto
Menu File Save Cree una carpeta solo para el proyecto
para intentar grabar ahí el formulario con el nombre que usted le asigne. Note que los formularios son archivos con la extensión “dfm”
Intente grabar el proyecto con el nombre que usted defina. Note que el proyecto tendrá la extensión “cbproj”.
3.5 Hacer un Programa .exe
Menu Project Make project.exe. Se graba en el subdirectorio DEBUG de
la carpeta donde se encuentra grabado el proyecto.
TForm El formulario es una pantalla sobre la que se colocan otros objetos.
TLabel Etiquetas para poner nombres a objetos y zonas de un formulario.
TEdit Cuadros de texto para introducir información en la aplicación, o extraer información
TButton Botón para ordenar acciones
TStringGrid Objeto para programar grillas
4 Objetos Basicos de C++
4.1 TForm Formulario Propiedades : Forma y caracteristicas
Name : Form1 Caption : “Mi primer Programa” Color :clHotLight clYellow
Eventos: Comportamiento al suceder ..
On_Show : Cuando aparece el formulario en pantalla
ON_Click : Cuando hace un click sobre el formulario
4.2 TLabel Etiqueta Propiedades : Apariencia y forma
Name: Label1 Caption : “Mi primer Programa” Color :clRed clBlue
Eventos: Ocurrencias. OnMouseMove
Cuando el mouse se mueve sobre la etiqueta
4.3 TEdit Editor de texto
Propiedades : Name : Text1 text : Hola Mundo
Eventos: OnChange Cuando cambia su
contenido OnClick Cuando hace 1 click con
el mouse
4.4 TButton Boton
Propiedades : Name : >Button1 Caption : Saludar Enable : True/False (Permite que se haga Click) Visible : True/False (Se lo puede ver en el
formulario)
Eventos: Click Cuando hace 1 click encima con el
mouse DblClick hace 2 click encima con el mouse
4.5 TStringGrid Grilla
Propiedades : Name : TStringGrid1 Font : Tipo de letra Color: Tono de color
Eventos: OnClick Al hacer click sobre el
boton
4.5 TStringGrid
PROPIEDAD VALOR
ColCount 10
DefaultColWidth 80
DefaultRowHeight 40
FixedCols 0
FixedRows 0
RowCount 10
4.5 TStringGrid
Crear el Objeto matriz tipo TStringGrid matriz->Cells[0][0]=1111; matriz->Cells[0][1]=1111;
Columna Fila
’ .. Y para la apariencia de la matriz matriz-> ScrollBars = 0 matriz-> HighLight = 0 matriz-> Color = clWindow ’ Indicar que las filas y las columnas
’ comienzan de 0 matriz-> FixedCols = 0 matriz-> FixedRows = 0
Llenar la matriz con valores nulos
For (i = 0;i<N;i++) For (j = 0;j<N;j++) matriz->Cells[j][i]="0";
’ Permitir la edicion de las celdasmatriz-> Options << goEditing’ Quitar la edicion de las celdasmatriz-> Options >> goEditing
Practica Nro 1: Crear una plantilla matriz
Practica Nro 1: Crear una plantilla matriz
void __fastcall TForm1::FormShow(TObject *Sender){ Edit1->Text = 10; Edit2->Text = 10;}
void __fastcall TForm1::Edit1Change(TObject *Sender){if (Edit1->Text!= "" && Edit2->Text!= "") if (StrToInt(Edit1->Text) > 0 && StrToInt(Edit2->Text) > 0) IniMat();}
void __fastcall TForm1::Edit2Change(TObject *Sender){if (Edit1->Text!= "" && Edit2->Text!= "") if (StrToInt(Edit1->Text) > 0 && StrToInt(Edit2->Text) > 0) IniMat();}
Practica Nro 1: Crear una plantilla matriz
void IniMat() {
int ancho, alto, i, j;
//Apariencia de la matriz
Form1->Ma1->ScrollBars = ssNone ;
//Comportamiento de la matriz
Form1->Ma1->FixedCols = 0 ;
Form1->Ma1->FixedRows = 0;
Form1->Ma1->ColCount = StrToInt( Form1->Edit2-
>Text);
Form1->Ma1->RowCount = StrToInt(Form1->Edit1-
>Text);
ancho = Form1->Ma1->Width; // Obtener el ANCHO
Practica Nro 1: Crear una plantilla matriz
alto = Form1->Ma1->Height; //Obtener el ALTO
ancho = ancho / Form1->Ma1->ColCount;
alto = alto / Form1->Ma1->RowCount;
// Dividiendo el Ancho y alto de la Matriz
Form1->Ma1->DefaultColWidth = ancho ;
Form1->Ma1->DefaultRowHeight= alto ;
//Llenando la Matriz con CEROS
for(int i = 0;i<Form1->Ma1->RowCount;i++)
for(int j = 0;j<Form1->Ma1->ColCount;j++)
Form1->Ma1->Cells[j][i]="0";
}
Observaciones1. Parar referenciar objetos como el formulario se
utiliza ->2. Para acceder las propiedades o eventos de una
class de programa se utiliza.3. Errores de la practica
1. Hay diferencia entre mayúsculas y minúsculas (variables y nombres de objetos)
2. No olvidar el ;Misssing statement ;
3. Poner un valor aceptable en las cajas de texto evita problemas de conversión.
4. Conversiones 1. StrToInt2. atoi3. Operardor AND (&&)
4.6 Caja para entrada de datos
Pedir introducir un valor entero
val = Inputbox( titulo, mensaje, valor)
AnsiString val; val=InputBox("Generar serie","Introduzca la dimension",0); int dato = atoi(val.c_str())
4.7 Caja para salida de datos
MessageDlg("Hola", //Message mtConfirmation, //Message type TMsgDlgButtons() << mbOK, //Buttons 0);
Mostrar mensaje y luego esperar el click
MessageDlg(mensaje,tìpo,boton,indice)
ShowMessage(tmp);