quarta-feira, 27 de janeiro de 2021

C++ builder - colorindo vogais


Declaramos e inicializamos uma matriz
bidimensional de string do C,
e imprimimos usando um Label do C++ builder.
Até aqui nenhuma novidade,
mas nossa ideia era de fazer pesquisas de caracteres
dentro desta matriz, e fizemos isto perfeitamente,
utilizando trechos de códigos que já utilizo
a muito tempo, desde os tempos da velha janelinha preta,
mas a graça do programa seria colorir todas as vogais
encontradas na matriz com cores distintas.
Deu tudo certo, tenho certeza que muitos vão querer
testar isto, ou pelo menos querer saber como tudo foi feito.



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

#include <vcl.h>
#pragma hdrstop
#define lin  12
#define col 45
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
String str;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void Informe ( ) {
Form1 -> Canvas -> Font -> Size = 12;
Form1 -> Canvas -> Font -> Name = "Garamond";
Form1 -> Canvas -> Font -> Color = clBlack;
Form1 -> Canvas -> TextOut ( 270, 290, "Por: " );
Form1 -> Canvas -> Font -> Color = clRed;
Form1 -> Canvas -> TextOut ( 310, 290, "Samuel Lima" );
Form1 -> Canvas -> Font -> Color = clBlack;
Form1 -> Canvas -> TextOut ( 270, 305, "sa_sp10@hotmail.com" );
Form1 -> Canvas -> Font -> Name = "Garamond";
}
//---------------------------------------------------------------------------
     char texto [ lin ] [ col ] = {
        "No Meio do Caminho                         ",
        "Carlos Drummond de Andrade                 ",
        "No meio do caminho tinha uma pedra         ",
        "Tinha uma pedra no meio do caminho         ",
        "Tinha uma pedra                            ",
        "No meio do caminho tinha uma pedra.        ",
        "Nunca me esquecerei desse acontecimento    ",
        "Na vida de minhas retinas tao fatigadas.   ",
        "Nunca me esquecerei que no meio do caminho ",
        "Tinha uma pedra                            ",
        "Tinha uma pedra no meio do caminho         ",
"No meio do caminho tinha uma pedra.        "};
// ---------------------------------------------------------------------------
void __fastcall TForm1::Label_Manual ( TObject* Sender ) {
Edit1 -> SetFocus ( );
    Edit1 -> Font -> Size = 12;
    Edit1 -> Width = 90;
    Edit1 -> Height = 20;
    Edit1 -> Left = 110;
    Edit1 -> Top = 305;

BitBtn1 -> Font -> Size = 12;
BitBtn1 -> Font -> Color = clBlue;
BitBtn1 -> Font -> Style = TFontStyles ( ) << fsItalic;
BitBtn1 -> Top = 305;
BitBtn1 -> Left = 210;
BitBtn1 -> Height = 23;
BitBtn1 -> Width = 30;
BitBtn1 -> Caption = "Ok";

BitBtn2 -> Font -> Size = 12;
BitBtn2 -> Font -> Color = clBlue;
BitBtn2 -> Font -> Style = TFontStyles ( ) << fsItalic;
BitBtn2 -> Top = 305;
BitBtn2 -> Left = 460;
BitBtn2 -> Height = 23;
BitBtn2 -> Width = 50;
BitBtn2 -> Caption = "Sair";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Imprime_matriz ( TObject* Sender ) {
//SENTIU FALTA DE ALGUNS CÓDIGOS?
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn2Click ( TObject *Sender ) {
   Close ( );
}
//---------------------------------------------------------------------------

Nenhum comentário:

Postar um comentário

Observação: somente um membro deste blog pode postar um comentário.