Tipos de Datos c++ builder

  • Upload
    rogncx

  • View
    224

  • Download
    2

Embed Size (px)

Citation preview

  • 7/24/2019 Tipos de Datos c++ builder

    1/24

    Repblica Bolivariana de VenezuelaUniversidad Nacional Experimental del Tchira

    Departamento de Ingeniera InformticaComputacion II-Ingeniera Electrnica (6010)

    San Cristbal-Venezuela

    Tema Perteneciente a la Unidad N 4: Programacin en C++ Builder.

    Autor: Lcdo. Jos Froiln Guerrero Pulido

    Mayo, 2004

  • 7/24/2019 Tipos de Datos c++ builder

    2/24

    Uso del Formulario (TForm)Las propiedades de un objeto se caracterizan por ser una combinacin entre un miembro

    de datos y un mtodo. Al tratar una propiedad es como si se tratase de una variableobteniendo su valor o modificndolo. Sin embargo, en muchas ocasiones cuando se accede avalor de una propiedad se estar de manera indirecta provocando la ejecucin de un mtodocuya finalidad es realizar alguna accin segn la modificacin efectuada. Existen ciertaspropiedades que solo son accesibles durante el diseo, mientras que otras solo son accesibles

    durante la ejecucin. Una propiedad adems tambin puede ser un objeto (se identificanporque al lado izquierdo aparece el signo +) que a su vez contiene propiedades particulares.

    Los eventos son seales internas o externas a la aplicacin que el programa aprovecha para

    ejecutar cierto bloque de cdigo. Todos los componentes tiene asociado un evento por defecto, aunqueinicialmente es posible crear un mtodo de respuesta distinto para cada evento. Al igual que ocurre concualquier funcin, los mtodos de respuesta a eventos tambin pueden recibir parmetros de distintostipos. Un parmetro comn a los mtodos de respuesta a eventos, que se recibe siempre en primer lugares el llamado Sender, un puntero de tipo TObject. Este parmetro es una referencia a un objetoconcretamente al objeto que ha dado origen al evento.

    A medida que un proyecto se inserten formularios sobre estos se aaden componentes o controlea los cuales se les asocia eventos. Un formulario puede contener objetos tales como: TButtonTCheckBox, TComboBox, entre otros. Como se conoce un archivo de C++ se compone al menos de unarchivo de cdigo con el programa principal y por defecto con la funcin principal (WinMain), yopcionalmente de una serie de mdulos a los cuales es posible alojar funciones y clases deobjetos.Cuando se definen formularios estos son descendientes en principio a un objeto del tipo TFormEs posible tambin crear formularios teniendo como base otros formularios ya existentes, por lo que etipo base no ser directamente el objeto TForm, aunque ste estar siempre como ascendiente en algnpunto de la jerarqua.

    Cuando se parte de un nuevo proyecto observe el nombre asignado por defecto al primer mdulo

    del proyecto (Unit1.cpp), este mdulo incluye los archivos de cabecera necesarios para la totalidad de lasaplicaciones Windows y la definicin inicial de un nuevo tipo de objeto, TForm1, que es derivado del tipoTForm. Ahora, cualquier manipulacin sobre el formulario a nivel de componentes y eventos tiene sureflejo inmediato en el cdigo del mdulo asociado al formulario. En el programa principal a medida quese vayan aadiendo formularios al proyecto se irn insertando lneas con la macro USERFORMrelacionando todos los mdulos de cdigo o formularios con el mdulo principal.

    Al iniciar el desarrollo de una aplicacin en donde existen una serie de formularios de apariencia

    comn para la entrada de datos y visualizacin de resultados, esto implica el disear una uniformidadgeneral entre formularios. La idea es comenzar el proyecto diseando una plantilla que contenga losaspectos generales de los formularios, hasta incluir cdigo de algunos componentes. Creado y dado unnombre al formulario que servira como plantilla, este puede ser usado abriendo el depsito de objetos yubicndose sobre la pgina del proyecto donde se podr seleccionar el formulario. Si la idea es heredalos componentes y mtodos de la plantilla para un nuevo formulario, se hace necesario tener en cuentaque la plantilla sea heredada (opcin inherit del depsito de objetos), esto implica que al momento de abriel archivo DFM (inherited) del nuevo formulario no se observar toda la informacin necesaria acerca delos componentes, ya que la informacin adicional se encuentra en el archivo DFM del formulario queacta como plantilla. Lo planteado en este prrafo se conoce como reutilizacin de formularios en unmismo proyecto.

    Un formulario que ha nacido en una determinada aplicacin como base para el desarrollo de otrosformularios ms especializados, puede ser til posteriormente en otros proyectos, sobre todo si lo que sebusca es tener desarrollos comunes entre las aplicaciones informticas diseadas. Para aadir eformulario base al depsito de objetos se debe pulsar el botn derecho del ratn y seleccionar la opcinAdd To Repository. Luego aparecer una ventana donde se muestra una lista con los nombres de todos

  • 7/24/2019 Tipos de Datos c++ builder

    3/24

    los formularios del proyecto actual, seleccione el formulario que desea almacenar en el depsito deobjetos y adicione un ttulo, una descripcin, el nombre del autor, en que ficha o pgina del depsito deobjetos se alojar el formulario (escoja la ficha Forms como el destino ms lgico del formulario base) yun icono para su representacin. A partir de este momento se podr usar el formulario siempre que lodesee en cualquier otra aplicacin o proyecto.

    Adems de usar formularios individuales tambin se puede reutilizar aplicaciones o proyectos

    completos. De hecho, en la pgina Projects del depsito de objetos existen varios modelos de aplicacinya prediseados. Esta posibilidad esta dirigida sobre todo a reducir el tiempo empleado en la creacin de

    esqueleto de una aplicacin, que suele ser siempre igual. Para aadir un proyecto al depsito de objetosse abre el men Project y seleccionar la opcin Add To Repository. Luego aparecer una ventanacomo la descrita en el prrafo anterior. Dado este paso, siempre que se desee iniciar un nuevo proyectose puede elegir la pgina adecuada del depsito de objetos y hacer doble clic sobre el icono adecuadoLos proyectos que vayan aadirse al depsito de objetos para ser posteriormente utilizados debernalmacenarse en un directorio que tan solo contenga los elementos de este proyecto. Al crearse una nuevaaplicacin tomando como base otro proyecto, C++ Builder preguntar cul ser el directorio del nuevoproyecto y copiar en l todos los archivos del proyecto base.

    A continuacin se definen las propiedades ms importantes del componente TForm.

    Propiedad Significado

    ActiveControl Cuando un formulario tiene diversos componentes el control lo toma uno de ellos, el cuaestar activo al iniciar la aplicacin.

    HelpContext Asociar al formulario una pgina de ayuda. Con un valor distinto a cero y presionando la teclaF1 se activar el archivo de ayuda.

    HelpFile Definir la ubicacin del archivo de ayuda.

    Caption Definir el nombre de la barra de ttulo del formulario.

    BorderStyle Cambiar el estilo o la apariencia de los bordes en el formulario. Valores:

    bsSizeable = Permite durante la ejecucin que el formulario pueda ser redimensionado.

    bsSingle = Permite durante la ejecucin que el formulario no pueda ser redimensionado.

    bsNone = Elimina el borde de la ventana, la barra de ttulo con todos sus controles.

    AutoScroll Si el valor de la propiedad es verdadero, las barras del desplazamiento aparecenautomticamente cuando sea necesario.

    HorzScrollBar Editar la barra de desplazamiento horizontal.

    VertScrollBar Editar la barra de desplazamiento vertical.

    PrintScale Imprimir un formulario mediante la invocacin de un mtodo de la clase TForm. Valores:poNone = No mantener proporcin alguna.

    poProportional = Imprimir el mismo nmero de pixels en impresora que en pantalla.

    poPrintToFit = Ocupar el mayor espacio posible en la pgina manteniendo la proporcin delformulario.

    Tag Permitir asociar un valor entero al objeto manipulado.

    FormStyle Definir el estilo del formulario. Valores:

    fsNormal = Corresponde a un formulario independiente sin ventanas internas.

    fsMDIForm = El formulario acta como marco principal para otras ventanas hijas.

    fsMDIChild = El formulario acta como ventana hija dentro de un formulario principal.

    fsStayOnTop = El formulario permanece sobre otro sin ser ocultado.

    Icon Establecer el icono que aparecer en la barra de ttulo de la aplicacin. Usar el mtodoLoadFromFile de la clase TIcon.

    Cursor Cambiar el cursor que se establece para el rea caliente del formulario.

  • 7/24/2019 Tipos de Datos c++ builder

    4/24

    Hint Asignar una cadena de caracteres para la etiqueta de ayuda.

    ShowHint Si el valor de la propiedad es verdadero, la etiqueta de ayuda aparece automticamentecuando sea necesario.

    Visible Si el valor de la propiedad es verdadero, el formulario se hace visible.

    Enabled Si el valor de la propiedad es falso, el formulario no estar activo. Esta propiedad trabaja enconjunto con la propiedad Visible.

    Color Seleccionar un color de fondo para el formulario.

    BorderIcons Activar/Desactivar los botones de la barra de ttulo del formulario.

    Position Cambiar la posicin y el tamao del formulario en pantalla. Valores:

    poDesigned = Es el valor por defecto, el formulario aparecer en la misma posicin y tamaoque se fij durante el diseo.

    poDefault = El formulario cambiar de posicin y el tamao durante cada ejecucin.

    poDefaultPosOnly = El tamao del formulario permanece fijo, mientras que la posicin vacambiando en cada ejecucin.

    poDefaultSizeOnly = La posicin del formulario permanece fijo, mientras que el tamao vacambiando en cada ejecucin.

    poScreenCenter = El formulario aparece en el centro de la pantalla conservando el tamaodado en el diseo.

    Left Define la coordenada horizontal del formulario.

    Top Define la coordenada vertical del formulario.

    Width Define el ancho del formulario.

    Heigth Define la altura del formulario.

    WindowsState Determina si el formulario se minimiza, maximiza, o se presenta en su estado normal.

    Entre los mtodos ms usados del componente TForm se especifican los siguientes:

    Mtodo Significado

    Show Hacer visible un formulario disponindola sobre las dems ventanas abiertas.

    BringToFront Disponer de un formulario sobre los dems, porque esta activa y oculta en parte.

    SendToBack Enviar el formulario al fondo de la pantalla, debajo de las dems ventanas.

    Hide Ocultar un formulario de tal forma que no sea accesible por parte del usuario de la aplicacin.

    Close Cerrar un formulario que no se va a utilizar ms en el programa.

    Destroy Destruir un formulario al cual no se podr acceder a sus miembros.

    Print Obtener una copia impresa del formulario.

    GetFormImage Capturar una imagen del formulario, esta funcin devolver un objeto de tipo TBitmap.

    En cuanto a los eventos ms usados del componente TForm se indican los siguientes:

    Evento Significado

    OnMouseMove Este es un evento recibido por un componente a medida que el cursor del mouse se muevesobre l.

    OnMouseDown Se genera cuando se pulsa cualquiera de los botones del mouse, recibiendo este evento aquelcontrol que en ese momento se encuentra bajo el cursor.

    OnMouseUp Cada vez que se libera un botn del mouse sobre el control.

    OnClick Denota una pulsacin del botn izquierdo del mouse sobre algn control.

  • 7/24/2019 Tipos de Datos c++ builder

    5/24

    OnDblClick Denota doble pulsacin (doble clic) del botn izquierdo del mouse sobre algn control.

    OnKeyDown Se produce al pulsarse cualquier tecla. Tenga en cuenta que el cdigo recibido no es el cdigoASCII, sino el cdigo virtual de la tecla pulsada.

    OnKeyUp Este evento se genera al momento de liberar una tecla.

    OnKeyPress Se produce al pulsarse cualquier tecla normal, excluyendo teclas de funcin o edicin.

    OnDragOver Se produce cuando sobre un determinado control se desplaza un elemento que est siendoarrastrado.

    OnDragDrop Se produce cuando el elemento es soltado sobre el control, liberando el botn izquierdo demouse.

    OnCreate Se genera cuando el formulario va a ser creado.

    OnActivate Este evento se produce en el momento en que el formulario se convierte en la ventana activadel entorno.

    OnShow Antes de que un formulario se haga visible se genera este evento.

    OnHide Este evento se produce justo antes de que el formulario sea ocultado.

    OnDeactivate Este evento se genera cuando el formulario se vuelve inactivo, porque se ha cambiado a otraventana de la aplicacin.

    OnClose Cuando un formulario ha dejado de ser til en pantalla.

    OnDestroy Cuando un formulario no va a ser utilizado ms en el programa despus de ocultarse sedestruye.

    OnPaint Este evento se genera cada vez que el formulario necesita ser dibujado en pantalla.

    OnResize Cada vez que el tamao de un formulario sea modificado durante la ejecucin.

    Algunos de los eventos tratados en la tabla anterior son tiles para el comportamiento, desempeo uejecucin de otros componentes que a continuacin se explicaran.

    Componentes Receptores de Texto de Uso ms Frecuente

    TLabel (Standar): Este control permite mostrar texto esttico en el formulario, fijando su posicin, colortipo de letra y tamao. Suele utilizarse este texto para etiquetar otro control. Al no poseer formato deventana no puede recibir entradas desde el teclado. A continuacin se definen las propiedades msimportantes del componente TLabel.

    Propiedad Significado

    Name Toma el nombre que tendr el componente al momento de hacer referencia de este durante la

    programacin.Caption Toma el valor que se mostrar en la etiqueta de texto.

    Visible Si el valor de la propiedad es verdadero, la etiqueta se hace visible.

    Left y Top Contiene las coordenadas horizontal y vertical del componente.

    Width y Height Contiene el ancho y el alto del componente.

    AutoSize Si el valor de la propiedad es verdadero, provoca que las dimensiones del componente seajusten con exactitud al texto.

    Align Controla la alineacin del componente en el contenedor que se encuentre. Valores:

    alNone = Conserva la posicin y dimensiones originales.

  • 7/24/2019 Tipos de Datos c++ builder

    6/24

    alTop = Margen superior del contenedor.

    alBottom = Margen inferior del contenedor.

    alLeft = Margen izquierdo del contenedor.

    alRight = Margen derecho del contenedor.

    alClient = Todo el espacio disponible en el contenedor.

    Alignment Permite alinear el texto a la izquierda, derecha o centrado.

    Font Permite modificar los atributos del texto (Fuente, Color, Tamao, Estilo y Efectos).

    Color Establece un color de fondo para el componente.

    Transparent Si el valor de la propiedad es verdadero, provoca que la propiedad no tenga efecto alguno.

    FocusControl Permite seleccionar de la lista adjunta el nombre del componente TEdit que corresponda.

    Otras propiedades tratadas en el aparte referido al formulario, pueden ser manipuladas en el TLabel, tal es el casode: Hint, ShowHint, Enabled, Tag y Cursor.

    Entre los mtodos ms usados del componente TLabel se especifican los siguientes:

    Mtodo Significado

    Contains Determina si algunos valores constantes se encuentran activos o no en una propiedad.

    SetBounds Permite modificar la posicin y dimensiones del componente, especificando los valorescorrespondientes a las propiedades: Left, Top, Width y Height.

    Otros mtodos tratados en el aparte referido al formulario, pueden ser manipulados en el Tlabel, tal es el caso de:BringToFront, SendToBack, Show y Hide.

    TEdit (Standar):Este control permite la entrada de datos por teclado. Es un control de texto desplegablede una sola lnea. Se usa para recuperar el texto que los usuarios escriben, pudiendo servir tambin paraque el usuario visualice el texto que el control recibe, por ejemplo el valor de un campo de una tabla deuna base de datos con la que est asociado. Muchas de las propiedades de este componente son

    comunes al componente TLabel.

    Propiedad Significado

    Name Toma el nombre que tendr el componente al momento de hacer referencia de este durante laprogramacin.

    Text Toma el valor que se mostrar en el cuadro de texto inicialmente.

    Enabled Si el valor de la propiedad es verdadero, el cuadro de texto estar activo.

    Font Permite modificar los atributos del texto (Fuente, Color, Tamao, Estilo y Efectos).

    Color Establece un color de fondo para el componente.

    MaxLenght Establece el mximo nmero de caracteres que se desean admitir en el control. Inicialmenteesta propiedad tiene el valor de cero indicando que en principio no existe un lmite.

    CharCase Permite convertir las letras introducidas a maysculas o a minsculas. Valores:

    ecNormal = No se realiza conversin alguna.

    ecLowerCase = Todas las maysculas a minsculas.

    ecUpperCase = Todas las minsculas a maysculas.

    Modified Determina si el contenido de una celda ha sido modificado o no. El valor de la propiedad pordefecto es falso, por lo cual el usuario al momento de introducir cualquier carcter, lapropiedad tomar el valor de verdadero.

    ReadOnly El contenido del campo de texto ser de slo lectura, no modificable por parte del usuario.

  • 7/24/2019 Tipos de Datos c++ builder

    7/24

    PasswordChar Establece que la informacin introducida por teclado no se refleje en pantalla sustituyendocada uno de los caracteres por un cierto smbolo.

    SelStart Permite conocer la posicin a partir de la cual se ha marcado una porcin de texto.

    SelLenght Permite conocer la longitud del texto marcado en el componente.

    SelText Sirve para obtener el texto que se encuentra seleccionado en el control como para cambiarlopor otro.

    HideSelection Si el valor de la propiedad es verdadero, oculta la seleccin del texto cuando sale del control.

    AutoSelect Si el valor de la propiedad es verdadero, indica al control que cada vez que se activeseleccione todo el contenido o texto.

    TabStop Determina si el componente se active mediante la pulsacin de la tecla tabulador.

    TabOrder Permite establecer un valor numrico para establecer el orden en que se irn activando losdistintos componentes del formulario.

    Otras propiedades que pueden ser tratadas en este componente son: BorderStyle, Left, Top, Width,Height,AutoSize, Hint, ShowHint, Tag y Cursor.

    El control TEdit cuenta con un men contextual especfico, el cual no se tiene que crear, ngestionar. Otro aspecto importante a destacar es que C++ Builder nos permite establecer el orden deacceso a los componentes de una forma ms cmoda, para ello se tiene la opcin Tab Order del mencontextual del formulario, o bien elegir esa misma opcin Edit del men principal.

    Mtodo Significado

    SelectAll Selecciona todo el texto existente en el control.

    ClearSelection Elimina el texto seleccionado en ese momento en el control.

    CopyToClipboard Copiar el texto selecc ionado en el portapapeles.

    CutToClipboard Copiar y borrar el texto seleccionado del componente en el portapapeles.

    PasteFromClipboard Tomar el texto existente en el portapapeles e insertarlo en la posicin que indique el cursor en

    el control.

    Otros mtodos que pueden ser utilizados en este componente son: Show, Hide, BringToFront y SendToBack.

    Entre los eventos ms significativos de este control se especifican los siguientes:

    Evento Significado

    OnEnter Se genera en el momento en que el cuadro de texto se convierta en el control activo delformulario.

    OnExit Se genera en el momento en que el cuadro de texto deja de ser activo en el formulario.

    OnChange Cada vez que se realice una modificacin en el contenido del campo de texto, insertando unnuevo carcter o borrando parte del contenido.

    TMaskEdit (Additional): Con este control se puede establecer una mscara de control. Estecomponente sirve para implementar un control TEdit con un formato de entrada genrico. Dicha mscaraes una cadena de caracteres en la cual algunos tienen un significado especial. Esta cadena tendr queasignarse a la propiedad EditMask. Durante la ejecucin, la mscara que hayamos aplicado condicionartanto la introduccin de datos en el campo como la visualizacin de stos. Una mscara consta de trescampos separados por un punto y coma. El primer campo es la mscara de entrada. El segundo campoes el carcter que determina si los caracteres de la mscara se deben guardar junto con los datos. Etercero es el carcter de la mscara usado para representar los caracteres que no contiene la mscara de

  • 7/24/2019 Tipos de Datos c++ builder

    8/24

    validacin.

    Caracter Significado

    C Requiere la entrada de un carcter.

    c Permite la entrada de un carcter.

    A Requiere la entrada de un carcter alfanumrico.

    a Permite la entrada de un carcter alfanumrico.

    L Requiere la entrada de un carcter alfabtico.

    l Permite la entrada de un carcter alfabtico.

    0 Requiere la entrada de un carcter numrico.

    9 Permite la entrada de un carcter numrico.

    # Permite la entrada de un carcter numrico o de signo.

    < Los caracteres siguientes aparecern en maysculas.

    > Los caracteres siguientes aparecern en minsculas.

    Desactiva la funcin de los dos caracteres anteriores.\ Interpreta el carcter siguiente como no especial.

    _ Representa un espacio en blanco.

    : Separador de horas y minutos.

    / Separador de fec has.

    Separador interno de la mscara.

    A travs de la propiedad EditMask permite activar la ventana de edicin de la mscara que actuaren el campo de texto. Otras propiedades que pueden ser tratadas en este componente sonBorderStyle,Left, Top, Width, Height, AutoSize, Hint, ShowHint, Tag, Cursor y Font.

    TMemo (Standard): Este control es muy similar al control TEdit, con la diferencia de que es posibletrabajar con una mayor extensin de texto, que adems puede estar distribuido en mltiples lneas. Laspropiedades de este control coinciden en su mayor parte con las del control TEdit.

    Propiedad Significado

    Lines Permite activar la ventana de edicin para la introduccin de mltiples lneas de texto.Tambin se puede recuperar el contenido de un archivo, as como guardar el texto actual delcontrol en un archivo.

    WordWrap Si el valor de la propiedad es verdadero, el cursor se desplazar a la lnea siguiente en emismo momento en que llegue al margen derecho, dividiendo automticamente la lnea por la

    ltima palabra.

    ScrollBars Facilita el desplazamiento por el texto activando las respectivas barras de desplazamiento.Valores:

    ssNone = Ninguna (valor por defecto).

    ssHorizontal = Horizontal.

    ssVertical = Vertical.

    ssBoth = Ambas (vertical y horizontal).

    WantTabs Si el valor de la propiedad es verdadero, se puede hacer uso de la tecla tabulador.

    WantReturns Si el valor de la propiedad es verdadero, se puede hacer uso de la tecla Enter o Intro.

  • 7/24/2019 Tipos de Datos c++ builder

    9/24

    Entre los mtodos ms usados del componente TMemo se nombran los siguientes:

    Mtodo Significado

    Add Permite aadir texto al final del contenido actual existente en el control.

    Insert Permite insertar texto en el control en una cierta posicin.

    Delete Permite eliminar texto existente en el control.

    Move Permite mover una determinada lnea de una posicin a otra.Exchange Intercambia la posicin de dos cadenas de texto.

    LoadFromFile Captura el texto contenido en el control para un archivo de texto.

    SaveToFile Permite guardar el contenido actual del control en un archivo de texto.

    Una de las grandes limitaciones del control es que no permite usar atributos diferentes para el textocomo tamaos o estilos, ni dispone de capacidad alguna de alineacin, sangrado de prrafos, etc.

    TListBox (Standard): Este control es capaz de contener cadenas de caracteres cada una de las cualesaparece como elementos de la lista. En caso de que el nmero de elementos excede las dimensiones dela lista, en el control aparecen las barras de desplazamiento.

    Propiedad Significado

    Items Permite editar los elementos que contendr la lista.

    Columns Especifica el nmero de columnas que existirn en el contenedor.

    Sorted Si el valor de la propiedad es verdadero, muestra los elementos ordenados alfabticamente.

    IntegralHeight Si el valor de la propiedad es verdadero, la lista toma un valor proporcional a la altura de unelemento, evitando la visualizacin parcial de un elemento.

    ItemIndex Permite conocer que elemento est seleccionado actualmente en la lista. El valor 1 pordefecto indica que no hay ningn elemento seleccionado.

    MultiSelect Si el valor de la propiedad es verdadero, permite seleccionar ms de un elemento de la lista(tecla Ctrl + pulsacin del botn izquierdo).

    SelCount Conocer cuantos elementos hay marcados actualmente.

    Selected Conocer que elementos estn marcados de la lista.

    Style Permite presentar otros objetos, como elementos grficos. Valores:

    ibStandard = Todos los elementos son cadenas.

    ibOwnerDrawFixed = Cada elemento es distinto pero con una altura fija.

    ibOwnerDrawVariable = Cada elemento tiene una altura variable.

    ItemHeight Especifica la altura en puntos de los elementos de la lista.

    Canvas Permite dibujar el elemento sobre la superficie de la lista.

    Por medio del mtodo Add por el que se consigue incluir los primeros elementos de la lista cuandose crea el formulario. Tambin intervenir el usuario en tiempo de ejecucin de manera que los que escriba en un control, TEdit por ejemplo, se asigne como un nuevo elemento de la lista.

    TComboBox (Standard): Este control es una combinacin del TListBox y TEdit, al que se conoce comolista combinada. Al tratarse de un control combinado que tiene funciones de un campo de edicin y de unalista, las propiedades de una lista combinada son un conjunto que resulta de la unin de las propiedades

  • 7/24/2019 Tipos de Datos c++ builder

    10/24

    de los dos controles antes mencionados, contando con algunas propiedades adicionales especificas.

    Propiedad Significado

    Style Permite elegir el estilo adecuado del control. Valores:

    csDropDown = Lista con campo de edicin asociado.

    csSimple = Campo de edicin sin lista.

    csDropDownList = Lista sin campo de edicin.

    csOwnerDrawFixed = Elementos distintos con altura fija.csOwnerDrawVariable = Elementos distintos con altura variable.

    ItemIndex Permite conocer que elemento est seleccionado actualmente en la lista. El valor 1 pordefecto indica que no hay ningn elemento seleccionado.

    Text Obtener el texto del elemento seleccionado.

    DropDownCount Especifica el nmero mximo de elementos que se visualizaran en la lista desplegable.

    En una lista combinada no es posible seleccionar mltiples elementos, por ello no existen laspropiedades MultiSelect, ExtendedSelect, SelectCount y Selected.

    Componentes para Iniciar rdenes (Botones)

    TButton (Standar):Este control de rea rectangular que contiene un texto en su interior y que al pulsarlolleva a cabo una determinada accin.

    Propiedad Significado

    Caption Toma el texto que se mostrar en el botn, a su vez puede contar con un carcter precedidode un &. Este carcter que aparece en el botn subrayado y haciendo uso de la tecla Alt

    permite activar y pulsar el botn en un solo paso.Default y Cancel Si el valor de la propiedad es verdadero, provoca que un cierto botn acte como botn por

    defecto o de cancelacin.

    ModalResult Un cuadro de dilogo modal se caracteriza por no permitir el acceso a ninguna otra ventana dela aplicacin mientras l se encuentre abierto, y al cerrarlo generalmente se devuelve un valorindicando la causa de la salida. Valores:

    mrNone = 0

    mrYes = idYes

    mrNo = idNo

    mrOk = idOk

    mrCancel = idCancelmrAbort = idAbort

    mrRetry = idRetry

    mrIgnore = idIgnore

    Otras propiedades que pueden ser manipuladas en el TButton, tal es el caso de: Name, Font, Enabled, Tag yCursor.

    TBitBtn (Additional): Este es un tipo de botn que incorpora un grfico en su interior de maneraadicional al texto. Este botn es ms intuitivo ya que el grfico ofrece una indicacin que en la mayora delos casos, hace innecesario el texto. Este componente cuenta con algunas propiedades adicionales que

  • 7/24/2019 Tipos de Datos c++ builder

    11/24

    permitan mostrar una pequea imagen en el botn. Entre las propiedades de este componente semencionan las siguientes:

    Propiedad Significado

    Glyph Permite asociar una imagen al botn, para ello se debe recuperar la imagen desde el archivodonde se encuentre.

    NumGlyphs Permite que el componente conozca cuantas imgenes hemos incluido en el grfico. El

    grfico que se cree puede realmente contener hasta cuatro imgenes, dispuestas junto a laotra horizontalmente.

    Margin Determina el nmero de puntos de separacin entre el borde del botn y el grfico.

    Layout Determina la posicin del grfico en el interior del botn. Valores:

    blGlyphLeft = A la izquierda.

    blGlyphTop = En la parte superior central.

    blGlyphRight = A la derecha.

    blGlyphBottom = En la parte inferior central.

    Spacing Determina el nmero de puntos de separacin entre el borde del botn y el texto.

    Kind Seleccin del tipo de botn con grfico predefinido por la propiedad en cuestin.

    Otras propiedades tratadas en el aparte referido al TButton, pueden ser manipuladas en el TBitBtn, tal es el casode: Name, Caption, Font, ModalResult, Default, Cancel, Enabled, Tag y Cursor.

    TSpeedButton (Additional): Este componente es un botn que contiene solo un grfico en su interiorsin texto, y para ser utilizado de forma conjunta con otros botones del mismo tipo.

    Propiedad Significado

    GroupIndex Permite crear grupos de botones que funcionarn de forma conjunta, de tal forma que al pulsaruno de ellos los dems se muestren liberados. Para crear un grupo tendremos que modificar a

    un valor distinto a cero, este valor debe ser mismo para todos los botones que formarn partedel grupo.

    Down Si el valor de la propiedad es verdadero, el botn se encuentra pulsado.

    AllowAllUp Si el valor de la propiedad es verdadero, se consigue que todos los botones del grupo puedenestar liberados y para cambiar su estado, de liberados a pulsados o viceversa.

    Flat Si el valor de la propiedad es falso, causa que los botones aparezcan resaltados en la barra,con un recuadro alrededor. Cuando el valor es verdadero, los botones sern planosdestacndose sobre los dems solo cuando el cursor del mouse pase sobre ellos.

    Otras propiedades tratadas en el aparte referido al TBitBtn, pueden ser manipuladas en el TSpeedButton, tal es elcaso de: Glyph, NumGlyphs, Margin, Layout, Hint, ShowHint y Spacing.

    TToolBar (Win32): Este componente tiene como uso servir de contenedor de botones del tipoTToolButton. Al insertar un componente de este tipo en el formulario lo nico que se observar un rearectangular ocupando la parte superior de la ventana.

    Propiedad Significado

    ButtonHeight yButtonWidth

    Los botones existentes en la barra tendrn las mismas dimensiones (alto y ancho). Estasdimensiones debern estar acorde con el tamao de las imgenes que se vayan a mostrar enel interior de los botones.

  • 7/24/2019 Tipos de Datos c++ builder

    12/24

    Images Contiene el nombre de las imgenes que representan a los botones en su estado normal.

    DisabledImages Contiene el nombre de las imgenes que representan a los botones cuando estendesactivados.

    HotImages Contiene el nombre de las imgenes que se usarn al momento de situar el cursor sobre losbotones, hacindoles aparecer destacados sobre los dems.

    Otras propiedades tratadas en otros componentes pueden ser manipuladas en el TToolBar, tal es el caso de:Align, AutoSize, Color, H int, ShowHint y Transparent.

    Puesto que en la barra (TToolBar) existen mltiples botones, ser necesario disponer de mltiplesimgenes en cada estado (normal, desactivado o caliente) en distintos TImageList. Desplegando el mencontextual del componente, aparecen dos opciones: New Button y New Separator, que son las quefacilitan en la barra de un nuevo botn o un separador, respectivamente. Cada uno de los botonesinsertados en la barra es un componente TToolButton que cuenta con sus propiedades y eventos.

    Propiedad Significado

    Caption Permite establecer el ttulo asociado al botn.

    ImageIndex Indica el ndice de la imagen que se ha de mostrar en el interior del botn.

    Style Indica el tipo de estilo que va a contener el botn. Valores:tbsButton = Un botn normal.

    tbsCheck = Botn que puede estar o no pulsado.

    tbsDivider = Lnea Divisoria.

    tbsDropDown = Botn con un men desplegable.

    tbsSeparator = Espacio de separacin.

    PopupMenu Nombre del men que estar asociado con el estilo tbsDropDown. El men deber estardiseado a travs del componente TPopupMenu y ser un men que se activar por medio delbotn derecho del mouse.

    Otras propiedades pueden ser tratadas en este componente, tal es el caso de: Down, Hint, ShowHint y Cursor.

    TImageList (Win32): Este componente es un contenedor de imgenes del mismo tamao (grupos deiconos o mapa de bits), cada una de las cuales puede ser referenciada por su ndice, cuyos nombres seasignarn a las propiedades Images, DisabledImages, HotImages. En la mayora de las ocasiones estecomponente ser usado en conjuncin con un TToolBar, TTreeView o TListView.

    Propiedad Significado

    AllocBy Incremento cada vez que sea necesario aumentar el nmero de imgenes.

    BkColor Color de fondo a utilizar al dibujar una imagen.

    BlendColor Color de combinacin.

    Count Nmero de imgenes contenidas.

    DrawingStyle Estilo para el dibujo de una imagen.

    Height Altura de las imgenes.

    ImageType Tipo de imagen a utilizar para dibujar.

    Masked Indica si la imgenes son transparentes o no.

    ShareImages Indica si las imgenes son compartidas con otro control.

    Width Anchura de las imgenes.

  • 7/24/2019 Tipos de Datos c++ builder

    13/24

    Todas las imgenes contenidas en este componente deben tener exactamente el mismo tamao, as paraimgenes de diferentes dimensiones se tendr que usar varios componentes TImageList.

    Tras insertar el componente haga doble clic sobre l, luego aparecer una ventana en donde sepodr ir aadiendo imgenes mediante el botn Add, estableciendo adicionalmente parmetros como ecolor que sea transparente, si la imagen se ajusta a las dimensiones por defecto, se corta o aparececentrada.

    Componentes de Seleccin de Opciones o Valores

    TCheckBox (Standard): Este control permite al usuario activar o desactivar una cierta opcin sinnecesidad de escribir nada, bastar con realizar una pulsacin sobre el control. Mediante este control sefacilita la seleccin de mltiples opciones. Entre las propiedades de este componente se mencionan lassiguientes:

    Propiedad Significado

    Caption Permite asignar el ttulo que aparecer junto a la caja de seleccin.

    Checked Determina el estado actual del control. Habitualmente este control puede aparecer en dosestados distintos: marcado (true) o sin marcar (false).

    AllowGrayed Si el valor de la propiedad es verdadero, el control no aparecer ni marcado ni sin marcar, unestado indeterminado.

    State Tambin determina el estado actual del control. Valores:

    cbChecked = Marcado.

    cbUnchecked = Desmarcado.

    cbGrayed = Indeterminado.

    TRadioButton (Standard):Este control permite al usuario activar o desactivar una cierta opcin, bastarcon elegir cualquier opcin desmarcando el botn de radio que se encontraba marcado en dichomomento. Mediante este control se facilita la seleccin de una sola opcin en un determinado instanteLas propiedades ms usadas son el Caption y el Checked.

    TGroupBox (Standard): La finalidad de este componente es actuar como padre o contenedor de otrocomponentes, agrupndolos y no dispone de ninguna propiedad en especial. Al insertar el componente enel formulario, ste aparecer como un recuadro, con un ttulo en la parte superior izquierda (Ttulo quepodr ser modificado a travs de la propiedad Caption). Aunque los controles que normalmente se

    agrupan son los botones de radio, mediante este componente se pueden agrupar cualquier conjunto decontroles, sin importar su tipo.

    En el caso de disponer de un determinado componente en el formulario y lo desplacemos al interio

    del TGroupBox, lo nico que realmente hecho ser modificar su posicin, pero realmente dichocomponente no estar contenido en el grupo.

    Las propiedades ParentFont, ParentColor y ParentShowHint toman el valor de verdadero, indicando

    as que los valores de las propiedades Font, Color y ShowHint de un determinado componente insertadosern tomados del contenedor TGroupBox.

  • 7/24/2019 Tipos de Datos c++ builder

    14/24

    TRadioGroup (Standard):C++ Builder dispone de este control para facilitar el tratamiento de grupos debotones de radio, ya que dispone de unas propiedades adicionales a las del control anterior que permitendisponer los botones de radio de una forma ms cmoda, as como conocer cul de ellos estseleccionado consultando una sola propiedad.

    Propiedad Significado

    Items Permite editar los botones de radio que existirn dentro del control.

    Columns Especifica el nmero de columnas que existirn en el contenedor.ItemIndex Permite conocer que botn est seleccionado actualmente como para modificar dicha

    seleccin. El valor 1 por defecto indica que no hay seleccionado ninguno de los botones.Esta propiedad evita la construccin de mltiples decisiones con el fin de conocer la seleccinactual dentro del contenedor.

    TCheckListBox (Additional): La particularidad de este componente consiste en que cada elementoaparece con una caja de seleccin a su izquierda, de tal forma que es posible marcar o desmarcar comosi se tratasen de controles TCheckBox individuales. Entre las propiedades de este componente semencionan las siguientes:

    Propiedad Significado

    Items Permite editar las cajas de seleccin que existirn dentro del control.

    Checked Determina el estado actual del control marcado o desmarcado.

    ItemEnabled Permite activar y desactivar los elementos de lista que convenga.

    TPanel (Standard): Este componente tiene como uso servir de contenedor de otros componentes ocomo barra de estado.

    Propiedad SignificadoBevelInner yBevelOuter

    Se fija el estilo del panel que puede aparecer resaltado o hundido en el formulario. Valores:

    bvNone = Sin ningn efecto.

    bvLowered = Hundido.

    bvRaised = Resaltado.

    BorderWidth Establece la anchura del borde del panel.

    Otras propiedades tratadas en otros componentes pueden ser manipuladas en el TPanel, tal es el caso de:Caption, Font y Align.

    Ejercicios Resueltos

    /* Proyecto 1: Este proyecto tiene como finalidad ser mostrar los atributos asignados por el usuario a unaetiqueta de texto durante la ejecucin, y a travs de botones, se podr controlar el tipo, estilo, tamao ycolor */

  • 7/24/2019 Tipos de Datos c++ builder

    15/24

    //-----------------------------------------------------------------------------

    void __fastcall TForm1::BotonArialClick(TObject *Sender){ Etiqueta->Font->Name="Arial"}//-------------------------------------------------------------------------------void __fastcall TForm1::BotonCourierClick(TObject *Sender){ Etiqueta->Font->Name="Courier"}//-------------------------------------------------------------------------------void __fastcall TForm1::BotonNegritaClick(TObject *Sender){ CambiaEstilo(fsBold)}//-------------------------------------------------------------------------------void __fastcall TForm1::BotonCursivaClick(TObject *Sender){ CambiaEstilo(fsItalic)}//-------------------------------------------------------------------------------void TForm1::CambiaEstilo(TFontStyle Estilo)

    { if (Etiqueta->Font->Style.Contains(Estilo)) Etiqueta->Font->Style=Etiqueta->Font->Style>>Estilo //Eliminamos el estilo else Etiqueta->Font->Style=Etiqueta->Font->StyleSize+=2}//------------------------------------------------------------------------------void __fastcall TForm1::MenosClick(TObject *Sender)

    { Etiqueta->Font->Size-=2}

    /* Proyecto 2: La finalidad de este proyecto es el de calcular el sueldo neto y deducciones de un empleadoNota: Incluir la cabecera de archivo */

  • 7/24/2019 Tipos de Datos c++ builder

    16/24

    //-----------------------------------------------------------------------------void __fastcallTForm1::CalcularClick(TObject *Sender)

    { AnsiString n,p,h,salida float sn,sb,sso,lph n=Nombre->Text p=Pago->Text h=Horas->Text sn=atof(p.c_str( ))*atof(h.c_str( )) sso=sn*0.05 lph=sn*0.01 sb=sn-(sso+lph) salida="Calculos de Nomina\n" "*****************\n\n" "Nombre: "+n+ "\nSueldo Neto: "+AnsiString(sn)+ "\nSeguro Social: "+AnsiString(sso)+ "\nPolitica Habitacional: "+AnsiString(lph)+ "\nSueldo Bsico: "+AnsiString(sb) ShowMessage(salida) ofstream F("NOMINA.TXT") F

  • 7/24/2019 Tipos de Datos c++ builder

    17/24

    //-----------------------------------------------------------------------------void __fastcaTForm1::FormCreate(TObject *Sender){ Guardar->Visible=false}//-----------------------------------------------------------------------------

    void __fastcaTForm1::EdadKeyPress(TObject *Senderchar &Key){ //Si no es un dgito numrico no admitla pulsacin de tecla

    if ((Key< '0'||Key> '9') && Key!=8) Key=0}//------------------------------------------------------------------------------void __fastcall TForm1::EstaturaKeyPress(TObject *Sender, char &Key){ //Si no es un dgito numrico no admitir la pulsacin de tecla if ((Key< '0' ||Key> '9') && Key!=8) Key=0}//------------------------------------------------------------------------------void __fastcall TForm1::PesoKeyPress(TObject *Sender, char &Key){ //Si no es un dgito numrico no admitir la pulsacin de tecla if ((Key< '0'||Key> '9') && Key!=8) Key=0}//------------------------------------------------------------------------------void __fastcall TForm1::VerificarClick(TObject *Sender){ AnsiString ed,es,pe ed=Edad->Text

    es=Estatura->Text pe=Peso->Text if (atoi(ed.c_str( ))180 && atof(pe.c_str( ))Enabled=false Etiqueta8->Caption="El estudiante procesado cumple con los requisitos mnimos para jugar

    Basketball" Guardar->Visible=true }}//------------------------------------------------------------------------------void __fastcall TForm1::GuardarClick(TObject *Sender){

    AnsiString salida salida=Nombre->Text+"\t"+Edad->Text+" aos\t"+Estatura->Text+" cm.\t"+Peso->Text+" Kg.\n" ofstream A("ADMITIDOS.TXT",ios::app) AEnabled=true Etiqueta8->Caption="" Nombre->Text="" Edad->Text="" Estatura->Text="" Peso->Text=""}

  • 7/24/2019 Tipos de Datos c++ builder

    18/24

    /* Proyecto 4: La finalidad de este proyecto es la utilizacin de un control TMemo diseando un pequeoeditor. Este control permitir recuperar un archivo, introducir texto o modificar el ya existente, realizaroperaciones con el portapapeles y guardar el contenido del control en un archivo */

    //------------------------------------------------------------------------------void __fastcall TForm1::FormCreate(TObject *Sender){ Texto->Clear( ) NombreArchivo->Text="texto1.txt"}//------------------------------------------------------------------------------void __fastcall TForm1::AbrirClick(TObject *Sender){ try { Texto->Lines->LoadFromFile(NombreArchivo->Text) } catch(...)

    { ShowMessage("El arhivo indicado no existe") } Texto->SetFocus( )}//------------------------------------------------------------------------------void __fastcall TForm1::GuardarClick(TObject *Sender){ try { Texto->Lines->SaveToFile(NombreArchivo->Text) } catch(...)

    { ShowMessage("No es posible efectuar la grabacin") } Texto->SetFocus( )}//------------------------------------------------------------------------------void __fastcall TForm1::NuevoClick(TObject *Sender){ Texto->Clear( ) Texto->SetFocus( )}//------------------------------------------------------------------------------void __fastcall TForm1::SalirClick(TObject *Sender)

  • 7/24/2019 Tipos de Datos c++ builder

    19/24

    { Close( )}//------------------------------------------------------------------------------void __fastcall TForm1::CopiarClick(TObject *Sender){ Texto->CopyToClipboard( ) Texto->SetFocus( )}//------------------------------------------------------------------------------

    void __fastcall TForm1::PegarClick(TObject *Sender){ Texto->PasteFromClipboard( ) Texto->SetFocus( )}//------------------------------------------------------------------------------void __fastcall TForm1::CortarClick(TObject *Sender){ Texto->CutToClipboard( ) Texto->SetFocus( )}

    /* Proyecto 5: La idea de este proyecto es mostrar una fotografa diferente en un control como el TImage, yse hace el comentario respectivo de la foto en una etiqueta de texto */

    //------------------------------------------------------------------------------void __fastcall TForm1::FormCreate(TObject *Sender){ AnsiString Archivo="IP.bmp" Imagen->Visible=false

    if (FileExists(Archivo)) { Imagen->Visible=true Imagen->Picture->LoadFromFile(Archivo) } else { Etiqueta->Caption="Imagen Principal no Existe" }}//------------------------------------------------------------------------------void __fastcall TForm1::Foto1Click(TObject *Sender){

  • 7/24/2019 Tipos de Datos c++ builder

    20/24

    AnsiString Archivo="I1.bmp" Imagen->Visible=false if (FileExists(Archivo)) { Imagen->Visible=true Imagen->Picture->LoadFromFile(Archivo) Etiqueta->Caption="Un verano muy cercano" } else {

    Etiqueta->Caption="La Fotografa no Existe" }}//------------------------------------------------------------------------------void __fastcall TForm1::Foto2Click(TObject *Sender){ AnsiString Archivo="I2.bmp" Imagen->Visible=false if (FileExists(Archivo)) { Imagen->Visible=true Imagen->Picture->LoadFromFile(Archivo)

    Etiqueta->Caption="Un viajero muy solitario" } else { Etiqueta->Caption="La Fotografa no Existe" }}//------------------------------------------------------------------------------void __fastcall TForm1::Foto3Click(TObject *Sender){ AnsiString Archivo="I3.bmp" Imagen->Visible=false if (FileExists(Archivo))

    { Imagen->Visible=true Imagen->Picture->LoadFromFile(Archivo) Etiqueta->Caption="Un cardenal y sus consejeros" } else { Etiqueta->Caption="La Fotografa no Existe" }}//------------------------------------------------------------------------------void __fastcall TForm1::CerrarClick(TObject *Sender){

    Close( )}

    /* Proyecto 6: Proyecto para seleccionar un determinado tipo de estilo y fuente para el texto introducido poel usuario */

  • 7/24/2019 Tipos de Datos c++ builder

    21/24

    //------------------------------------------------------------------------------void __fastcall TForm1::BAplicarClick(TObject *Sender)

    { TFontStyles Estilo // Conjunto de TFontStyle // Si est activa la caja de seleccin

    if (CNegrita->Checked) Estilo Checked) Estilo Checked) Estilo Font->Style = Estilo // Asignar el tipo de Fuente a la propiedad Name if (CArial->Checked) Etiqueta->Font->Name = "Arial" else if (CCourier->Checked) Etiqueta->Font->Name = "Courier" else Etiqueta->Font->Name = "Roman"

    }//------------------------------------------------------------------------------void __fastcall TForm1::CTextoChange(TObject *Sender){ // Cada vez que se modifique el texto en el control pasar a la etiqueta Etiqueta->Caption = CTexto->Text}

    /* Proyecto 7: En este proyecto se usa el control TCheckListBox y un botn para validar los das que seagregarn al TListBox situado a la derecha del formulario. Se debe editar la propiedad Items deTcheckListBox, asignando como elementos los siete das de la semana */

    //------------------------------------------------------------------------------void __fastcall TForm1::FormCreate(TObject *Sender){ CheckListBox1->ItemEnabled[5]=false CheckListBox1->ItemEnabled[6]=false}//------------------------------------------------------------------------------void __fastcall TForm1::AdiccionarClick(TObject *Sender){ Lista->Items->Clear( ) //Limpiar la Lista del Lado Derecho //Recorrer los elemntos seleccionados del lado izquierdo

  • 7/24/2019 Tipos de Datos c++ builder

    22/24

    for (int k=0 kItems->Count k++) { if (CheckListBox1->Checked[k]) Lista->Items->Add(CheckListBox1->Items->Strings[k]) }}

    /* Proyecto 8: Este proyecto consta de dos formularios que se interrelacionan entre s. En el primeformulario se le solicita al usuario una serie de datos, luego en el segundo formulario se visualizan losmismos datos solo para la lectura sobre cuadros de texto */

    //------------------------------------------------------------------------------void __fastcall TForm1::MostrarClick(TObject *Sender){ Hide( ) //Cerrar el primer formulario Form2->Show( ) Form2->RecApe->Text=Apellido->Text Form2->RecNom->Text=Nombre->Text Form2->RecFec->Text=Dia->Text+"/"+Mes->Text+"/"+Axo->Text Form2->RecSex->Text=Sexo->Text

    Form2->RecCiv->Text=Civil->Text Form2->RecTel->Text=Telefono->Text}

    //------------------------------------------------------------------------------void __fastcall TForm2::RegresarClick(TObject *Sender){ Close( ) // Cerrar el segundo formulario Form1->Show( )}

    /* Proyecto 9: La finalidad de este proyecto es la introduccin de los conceptos de botn por defecto y

  • 7/24/2019 Tipos de Datos c++ builder

    23/24

    botn de cancelacin */

    //------------------------------------------------------------------------------void __fastcall TForm1::AceptarClick(TObject *Sender){ CInformacion->Text = "Aceptar"}//------------------------------------------------------------------------------void __fastcall TForm1:: CancelarClick(TObject *Sender){ CInformacion->Text = "Cancelar"

    }//------------------------------------------------------------------------------void __fastcall TForm1:: SalirClick(TObject *Sender){ CInformacion->Text = "Salir"}

    /* Proyecto 10: El propsito de este proyecto es la utilizacin del control TGroupBox, para seleccionar etamao y la fuente a travs de botones de radio */

    // Cada vez que se modifique el texto en el control TEdit actualizar la etiqueta de textovoid __fastcall TForm1::CTextoChange(TObject *Sender){ CResultado->Caption = CTexto->Text}//------------------------------------------------------------------------------void __fastcall TForm1::AplicarClick(TObject *Sender){ TFontStyles Estilos // Conjunto de TFontStyle // Si est activa la caja de seleccin CNegrita if (CNegrita->Checked) Estilos Checked)

  • 7/24/2019 Tipos de Datos c++ builder

    24/24

    Estilos Check ed) Estilos Checked) Estilos Font->Style = Estilos // Dependiendo del tipo seleccionado asignar el tipo de fuente a Font->Name una cadena u otra if (CArial->Checked) CResultado->Font->Name = "Arial"

    else if (CCourier->Checked) CResultado->Font->Name = "Courier" else CResultado->Font->Name = "Roman" // Dependiendo del tamao seleccionado asignar el tamao de la fuente a Font->Size el valor adecuado if (C12->Checked) CResultado->Font->Size = 12 else if (C14->Checked) CResultado->Font->Size = 14 else CResultado->Font->Size = 18}