Beruflich Dokumente
Kultur Dokumente
FIM - AACIBAH
Ms VISUAL C++
El entorno Windows se ha convertido en el estndar de ejecucin de las aplicaciones y el MS-DOS
(pantalla modo texto) puede considerarse prcticamente obsoleto, de manera que la presente se va a tratar
de ayudar a los programadores del entorno MS-DOS a ingresar de una manera sencilla en el mundo de la
programacin bajo Windows. Las nuevas tecnologas de 32bits y prximamente 64 bits, han desplazado
por completo al MS-DOS y si somos o pretendemos ser desarrolladores de software de ingeniera, no nos
queda otro remedio que comenzar a implementar nuestras ideas en este sistema operativo, as como
involucrarse en las nuevas tendencias como el uso de software libre (LINUX). Hoy en da las nuevas
versiones de los lenguajes de programacin que corren sobre la plataforma de Microsoft, estn haciendo
uso de la nueva librera .NET, as como ltimamente el manejo de base de datos y la interaccin con
internet, es fundamental para toda aplicacin bsica.
Como todos sabemos, C es un lenguaje de alto nivel, basado en funciones, que permite desarrollos
estructurados. Entre otras muchas caractersticas contempla la definicin de estructuras de datos,
recursividad o indirecciones a datos o cdigo (punteros). C ++, por su parte, es un superconjunto de
C, al que recubre con una capa de soporte a la POO. Permite por tanto la definicin, creacin y
manipulacin de objetos.
Visual C++ es un entorno integrado de desarrollo que permite la programacin orientada a objetos (POO)
conjuntamente con el sistema de desarrollo SDK (tambin denominado API) de Windows. Al ser un
entorno integrado Visual C++ incluye, entre otras, las siguientes herramientas de desarrollo: Editor de
texto, Compilador/Enlazador, Depurador, Visor de datos y dependencias (Browser).
Desde el punto de vista del usuario Windows es un sistema amigable, pero desde el punto de vista del
desarrollador observaremos todo lo contrario. El SDK de Windows no es mas que un complejo conjunto
de funciones que aade adems numerosas definiciones de tipos de datos nuevos para cualquier
programador de C/C++ para DOS. Para solucionar este problema, Visual C++ incluye la librera de clases
MFC (Microsoft Foundation Classes) que permite crear y gestionar de manera intuitiva componentes
tpicos de Windows. Esto es, la MFC es una implementacin que utiliza el API encapsulando todas las
estructuras y llamadas a funciones en objetos fciles de utilizar. Basndose en la potencia de la MFC,
Visual C++ se convierte en un generador de programas C++ para Windows.
Requisitos mnimos hardware y software
Documentacin
La documentacin en lnea de Visual C++ consta de Quick Reference (Referencia rpida) y
Books Online (Documentacin en lnea). La Referencia rpida permite localizar rpidamente la
informacin mientras se est programando. La Documentacin en lnea es el conjunto de documentacin
para Visual C++ en formato en lnea. Todos los temas de Referencia rpida tienen un enlace a la
Pag. 1/23
FIM - AACIBAH
Objetivo
BIN
HELP
INCLUDE
LIB
MFC
Archivos de Biblioteca
OLE
PROJECTS
TEMPLATES
SAMPLES
Pag. 2/23
FIM - AACIBAH
La encapsulacin de las API de Windows es lgica y completa. La biblioteca MFC presta apoyo
para todas las funciones API de Windows utilizadas con frecuencia, incluyendo funciones de
ventanas; mensajes; controles; mens; cuadros de dilogo; objetos GDI (interfaz de dispositivos
grficos) tales como fuentes, brochas, lpices y mapas de bits; enlace de objetos y la interfaz de
documento mltiple (MDI).
Las funciones MFC son sencillas de aprender Microsoft ha hecho un gran esfuerzo para mantener
los nombres de las funciones MFC y los parmetros asociados son lo ms similar posible a las
clases padre API de Windows. Esto minimiza la confusin para los programadores de Windows
experimentados que deseen obtener las ventajas de la plataforma MFC simplificada. Tambin
facilita a los programadores que se inician en Windows el crecimiento dentro del superconjunto de
las funciones API de Windows cuando se est preparado o cuando la aplicacin lo requiera.
El cdigo C++ es ms eficiente. Una aplicacin utilizar slo un poco de RAM extra cuando utilice
las clases de la biblioteca MFC. La velocidad de ejecucin de una aplicacin MFC es casi idntica
a la misma aplicacin escrita en C y utilizando el estndar API de Windows.
La biblioteca MFC ofrece un manejo automtico del mensaje. La biblioteca Microsoft Foundation
Class elimina una fuente frecuente de errores de programacin, el bucle del mensaje API de
Windows. Las clases MFC estn diseadas para manejar de forma automtica cada uno de los
mensajes de Windows. En lugar de utilizar las instrucciones sensibles al contexto estndares, cada
uno de los mensajes de Windows se proyecta directamente a una funcin miembro, que toma la
accin apropiada.
La biblioteca MFC permite diagnsticos propios. Incorporada a la biblioteca MFC se encuentra la
posibilidad de realizar diagnsticos propios. Esto significa que puede verter informacin sobre
Pag. 3/23
FIM - AACIBAH
varios objetos a un archivo y validar un miembro del objeto variable, todos en un formato fcil de
entender
La biblioteca MFC incorpora una arquitectura robusta. Anticipando la gran necesidad del
estndar ANSI de C, la biblioteca Microsoft Foundation Class ya incorpora una amplia arquitectura
del manejo de excepciones. Esto permite que un objeto MFC recupere elocuentemente a partir de
condiciones de errores estndar, tales como "sin memoria", seleccin de opcin no vlida y
problemas cargando el recurso o el archivo. Cada componente de la arquitectura es ms compatible
con las recomendaciones ANSI de C propuestas.
La biblioteca MFC ofrece la introduccin de objetos dinmicos. Esta prestacin extremadamente
potente retrasa la introduccin de un objeto asignado dinmicamente hasta el tiempo de ejecucin.
Esto permite manipular un objeto sin tener que preocuparse de su tipo de datos subyacente. Como
la informacin sobre el tipo de objeto se devuelve en tiempo de ejecucin, el programador est
exento de un nivel de detalle adicional.
La biblioteca MFC se puede utilizar con MS-DOS La biblioteca Microsoft Foundation Class se
dise especficamente para desarrollar aplicaciones en Windows. Sin embargo, muchas de las
clases proporcionan frecuentemente los objetos necesarios para la manipulacin de cadenas y de
archivos de E/S. Por esta razn, estas clases de propsito general pueden utilizarlas tanto los
desarrolladores de Windows como los de MS-DOS.
La biblioteca MFC y los asistentes. Los asistentes de Control y de Clases slo crean un cdigo
compatible con MFC. Estos desarrolladores de programas dinmicos son necesarios para el
desarrollo de aplicaciones OLE.
Pag. 4/23
FIM - AACIBAH
PRIMER LABORATORIO
OBJETIVO: Al finalizar el laboratorio el alumno podr crear aplicaciones bsicas en el modo texto,
el modo grfico, as como tambin entender la estrecha relacin que existe sobre la teora de la
programacin orientada a objetos con el Visual C++, usando el concepto de herencia, polimorfismo,
encapsulacin, etc.
Fecha de publicacin primera edicion: Agosto del 2005.
Fecha ultima de revisin: 12/08/2005, 17/05/2006,01/11/2006
Pag. 5/23
FIM - AACIBAH
MFC: Clases fundamentales de Microsoft, contiene estructuras predefinidas que pueden usarse para
elaborar objetos.
Luego de dar OK, note lo siguiente: Se crear automticamente una carpeta con el nombre del proyecto
dentro de la carpeta indicada en location, en este caso ejemplo1. (Puede comprobarlo con el explorador
de windows), luego se activar los
pasos del AppWizard y se mostrara el
siguiente cuadro:
Step1
Aqu le preguntara mediante una serie
de cuadros de preguntas diferentes
aspectos que le permitirn darle una
mayor funcionalidad a su aplicacin,
ntese
que
en
este
caso
desarrollaremos una aplicacin del
tipo cuadro de dialogo (Dialog
based),
dndote
toda
una
infraestructura de clases que te
permitirn desarrollar tu aplicacin sin
necesidad de definir las funciones que
tienen que ver con el manejo de la
interfase. Entonces seleccione Dialog
Pag. 6/23
FIM - AACIBAH
Step4
En esta pantalla se muestra las
clases que se han generado como
base para el desarrollo de su
aplicacin,
luego
finalmente
presione el botn Finish para
mostrar la siguiente pantalla.
Pag. 7/23
FIM - AACIBAH
Finalmente
En este cuadro se muestra un reporte
de las caractersticas de nuestra
aplicacin. Presione OK
Luego que el AppWizard ha generado la aplicacin base, otra vez se mostrar el entorno de desarrollo del
visual C++, mostrando la siguiente apariencia.
Pag. 8/23
FIM - AACIBAH
Cambie la propiedad caption del botn Cancelar por Cerrar, para ello haga clic derecho en dicho botn
y seleccione properties
Pag. 9/23
FIM - AACIBAH
En las propiedades del botn cambie la seccin caption: Cancelar por Cerr&ar, el botn tendr la
siguiente apariencia:
Note que la a aparece subrayado lo cual permitir activar este botn, adems del click con el mouse,
tambin se podr invocar con la combinacin de teclas [Alt]+[a]
Obs: El ID representa el nombre de la
variable que se asignara a dicho control,
por ahora djelo como esta, pero si se
desea podras cambiarlo. Recuerde que
en este caso se llama IDCANCEL
Ahora usted Practique, y cambie de tal
manera que tenga la apariencia mostrado
en la parte derecha.
El botn Hola que tenga el ID:
IDHOLA
Y el botn Cerrar que tenga el ID:
IDCerrar
Si es necesario puede usar la cuadricula y la regla para tener una mejor referencia: Actvelo en el men
Layout / Guide Settings, aqu podr fijar el espaciado de la cuadricula. Esto tambin puede ser activado
con la tecla [Ctrl.] [G], varias veces para conmutar entre diferentes modos. Tambin puede usar las
dems opciones del men layout para poder alinear los botones y asignar un mismo tamao a estos
controles, practique
ASIGNANDO CODIGO A LOS BOTONES (CLASS WIZARD)
Para ello tendremos que invocar el Class Wizard, la cual puede ser invocada con una de las siguientes
procedimientos:
Menu View/
Class Wizard
[Ctrl.] [W]
Hacer click
derecho en el
botn
o
control
deseado
y
seleccionar
Class Wizard
Trabajemos con
el botn Hola,
hgale
click
derecho
y
seleccione Class
Wizard, aparecer
el
siguiente
cuadro:
Pag. 10/23