Conhecendo melhor as propriedades que capturam dados
Nos exemplos anteriores, conhecemos um modo de inserir textos ou strings nos componentes, sem nos preocuparmos de que modo isso nos pode ser útil. Agora aprofundaremos um pouco mais o estudo para podermos entender que essas propriedades não estão limitadas e pode produzir alguns resultados mais úteis:
void __fastcall TForm1::Button1Click(TObject *Sender)
/* Neste exemplo, iremos corrigir uma falha referente à cor do primeiro
exemplo em que usamos o objeto Canvas do Form. Como você deve ter notado,
as cores da frase sairam com um fundo branco (clWhite), enquento que o form
manteve a cor original clBtnFace, visto que não procedemos a nenhuma alteração
nela. Para visualizar melhor essa situação, dê uma olhada na propriedade
Color do Form no Object Inspector. Pois bem, vamos corrigir a cor do fundo
da frase para igualá-la ao Form.*/
{
// Ok. A cor do fundo igual à cor do Form
Canvas -> Brush -> Color = clBtnFace;
/* A linha de código abaixo nos mostra como podemos usar
propriedades matemáticas diretamente no Form*/
Canvas->TextOut( Canvas->PenPos.x = 10,
Canvas->PenPos.y = 100, (5 * 4) + (60 - 50) );
/* Podemos chamar funções que nos mostrem a data e a hora...*/
Canvas->TextOut( Canvas->PenPos.x, Canvas->PenPos.y, Date()/* +Time()*/);
}Evidentemente, outros componentes também são férteis para trabalharmos com dados:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
/*Uma caixa de mensagem que pode nos mostrar a data, a hora ou ambas.*/
ShowMessage( Time() /* + Date()*/ );
}
Por certo, as operações abaixo já não causam muitas surpresas em você:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
ShowMessage("Alô, Thérbio!\nVocê sabe qual é o resultado de "
"286 multiplicado por 132 somado com 412?");
ShowMessage((286 * 132) + 412);
Label1 -> Caption = (5 * 4) + 13; // imprime 33 no label
AnsiString a = 2 + 12; // AnsiString pode funcionar como inteiro ou ponto flutuante
/* neste exemplo, o sinal + neste local do código, serve para
concatenar os dados. Só ocorre a concatenação porque usamos o
tipo AnsiString. Se tivéssemos usado uma variável inteira ou
ponto flutuante, o resultado seria diferente*/
Label2 -> Caption = "Multiplicação de 14 X 14 = " + a * a;
/* produz o mesmo resultado no Label. O mesmo resultado teríamos se
tivéssemos usados variáveis inteiras ou ponto flutuante*/
Edit1 -> Text = "****Elimina os quatro primeiros caracteres" + 4;
}
Vamos aproveitar para conhecer a base do código que será usado para construirmos uma calculadora. Usaremos um Label e um Botão qualquer no Form.
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
/* O código abaixo determina que o programa coloque no Caption de Label1
tudo aquilo que já está nele e mais o número 1. */
Label1 -> Caption = Label1 -> Caption + 1;
}
|
HOME || MAPA DO SITE || CURSOS || TUTORIAIS || LINKS || FORUM || CONTATO |