1 / 12

GRÁFICOS EN BUILDER C++

GRÁFICOS EN BUILDER C++. En la página Adittional de la Paleta de componentes se encuentra el control Shape,.

petra
Télécharger la présentation

GRÁFICOS EN BUILDER C++

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GRÁFICOS EN BUILDER C++ En la página Adittional de la Paleta de componentes se encuentra el control Shape, El cual es un componente básicamente visual, no preparado para interactuar con el usuario, con este componente se pueden crear entidades sencillas de tipo gráfico como son: círculos, rectángulos, óvalos y cuadrados. Tanto en tiempo de diseño como de ejecución. La posición y las dimensiones del control y, por lo tanto de la entidad gráfica a la que representa, están dadas por las propiedades Left y Top que determinan la esquina superior izquierda de la entidad, mientras que Width y Height serán sumadas a Left y Top para determinar la esquina opuesta. La entidad gráfica que se dibujará depende del valor asignado a la propiedad Shape, las cuales se muestran a continuación:

  2. GRÁFICOS EN BUILDER C++ La entidad gráfica que se dibujará depende del valor asignado a la propiedad Shape, que será una de las que se muestran a continuación. Lo cual se puede establecer al inicio de la ejecución o bien al final. Todas las entidades gráficas anteriores se caracterizan por tener un área delimitada por un borde, que puede tener más o menos un ancho determinado, ser de un color u otro o tener un trazo distinto. Estas características son las que se pueden definir con la propiedad Pen del componente Shape, que es un objeto del tipo Tpen. Como todo objeto contiene sus propiedades respectivas.

  3. GRÁFICOS EN BUILDER C++ Por omisión el pincel que traza el borde de una figura dibuja sobre cualquier otro elemento que exista en ese momento de fondo, ocultándolo o, en cierta forma, borrándolo. Esto es porque el valor por defecto de la propiedad Mode es pmCopy. Sin embargo, el trazo del pincel puede ser una combinación entre el fondo y el propio pincel. La cual se indica por la propiedad Mode, toma cualquiera de los siguientes valores:

  4. GRÁFICOS EN BUILDER C++

  5. BROCHAS El interior de la entidad gráfica mostrada por el control Shape estará o no rellenado, siendo pintado, en caso afirmativo, con un color y una trama que dependerá de la brocha que se utilice. Este elemento está representado por la propiedad Brush, un objeto del tipo Tbrush que cuenta con las propiedades necesarias para fijar las características del relleno. El color dependerá del valor que se asigne a la propiedad Color de Brush, mientras que el relleno estará determinado por el valor que se asigne a la propiedad Style, que será alguno de los mostrados en la siguiente tabla:

  6. GRÁFICOS EN BUILDER C++ __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { Shape1->Shape= (TShapeType) stSquare; Shape2->Shape= (TShapeType) stRoundSquare; Shape3->Shape= (TShapeType) stRectangle; Shape4->Top = 200; Shape4->Left = 50; Shape4->Width = 200; Shape4->Height=200; Shape4->Shape= (TShapeType) stCircle; Shape5->Shape= (TShapeType) stEllipse; }

  7. GRÁFICOS EN BUILDER C++ TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { Shape1->Brush->Style = (TBrushStyle) bsFDiagonal; Shape1->Shape= (TShapeType) stRoundSquare; Shape1->Shape= (TShapeType) stSquare; Shape2->Brush->Color = (TColor) RGB (0,255,0); Shape2->Brush->Style = (TBrushStyle) bsBDiagonal; Shape2->Shape= (TShapeType) stRoundSquare; Shape3->Brush->Color = (TColor) RGB (255,255,0); Shape3->Brush->Style = (TBrushStyle) bsCross; Shape3->Shape= (TShapeType) stRectangle; Shape4->Top = 200; Shape4->Left = 50; Shape4->Width = 200; Shape4->Height=200; Shape4->Brush->Color = (TColor) RGB (0,0,255); Shape4->Brush->Style = (TBrushStyle) bsSolid; Shape4->Shape= (TShapeType) stCircle; Shape5->Brush->Color = (TColor) RGB (255,0,0); Shape5->Brush->Style = (TBrushStyle) bsSolid; Shape5->Shape= (TShapeType) stEllipse; } //---------------------------------------------------------------------------

  8. MOSTRAR IMÁGENES La mayoría de los gráficos e imágenes son mucho más complejos que un simple círculo. La forma más habitual de tratamiento y almacenamiento de imágenes utiliza una matriz de puntos o mapa de bits, en la cual cada punto puede tener un cierto color. Para almacenar un mapa de bits en un archivo existen diferentes formatos, siendo el más utilizado el del BMP. C++ Builder cuenta con tres tipos de objeto cuya finalidad es facilitar la manipulación de imágenes en cualquiera de los tres formatos más utilizados. Estos son TBitmap, para imágenes en forma de mapas de bits (.bmp); TMetaFile, cuando el formato es meta-archivo (conserva las órdenes gráficas que han generado la imagen junto con sus parámetros, .wmf), y TIcon, cuando la imagen a tratar es un icono (tiene un tamaño fijo y ciertas porciones de la imagen pueden ser transparentes .ico). Los tres tiene métodos comunes como son LoadFromFile y SaveToFile, mediante los cuales se puede cargar una imagen desde un archivo o salvarla. En caso de no conocer previamente el formato del archivo de imagen a cargar, en lugar de crear un objeto de cualquiera de las tres clases anteriores, se puede utilizar la clase Tpicture, que es compatible con cualquiera de las anteriores.

  9. EL CONTROL IMAGE Uno de los métodos más simples que se utilizan para visualizar una imagen gráfica, consiste en utilizar el control Image if (CDAbrir->Execute()) try { Image1->Picture->LoadFromFile(CDAbrir->FileName); Caption="Visualizar Gráficos - ( " + CDAbrir->FileName + ") "; } catch(...) { ShowMessage ("No es posible cargar el archivo"); } La propiedad Picture es un objeto del tipo Tpicture. Dando el valor de true a la propiedad AutoSize el control modificará su tamaño al cargar una imagen, adecuándolo a las dimensiones de ésta. Si se coloca en true a la propiedad Stretch, será la imagen la que se ajuste al control. La propiedad Center igual a true, puede centrar la imagen en el control.

  10. EL CONTROL IMAGE La siguiente figura muestra la forma de asociar el PopupMenu a la imagen correspondiente.

  11. EL CONTROL IMAGE TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::AjustarVentanaaimage1Click(TObject *Sender) { //Invertir el estado de la opción AjustarVentanaaimage1->Checked = !AjustarVentanaaimage1->Checked; //si está activa if (AjustarVentanaaimage1->Checked) { //Ajustar el tamaño de la ventana //al de la imagen a mostrar ClientWidth=Image1->Picture->Width ; ClientHeight=Image1->Picture->Height; } } //---------------------------------------------------------------------------

  12. EL CONTROL IMAGE void __fastcall TForm1::AjustarImagenaVentana1Click(TObject *Sender) { //Invertir el estado de la opción Image1->Stretch = !Image1->Stretch; //y mostrar el estado actual AjustarImagenaVentana1->Checked =Image1->Stretch ; } //--------------------------------------------------------------------------- void __fastcall TForm1::Centrarimagen1Click(TObject *Sender) { Centrarimagen1->Checked = !Centrarimagen1->Checked ; Image1->Center =Centrarimagen1->Checked ; } //--------------------------------------------------------------------------- void __fastcall TForm1::Cargarelarchivo1Click(TObject *Sender) { if (OpenDialog1->Execute() ) try { Image1->Picture->LoadFromFile(OpenDialog1->FileName ); Caption="Visualizar gráficos"; } catch(...) { ShowMessage ("No es posible cargar el archivo"); } } //---------------------------------------------------------------------------

More Related