Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina POO-II....

Post on 17-Apr-2015

103 views 0 download

Transcript of Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina POO-II....

Universidade do Vale do ParaíbaColégio Técnico Antônio Teixeira Fernandes

Disciplina POO-II.

Material II-Bimestre

Objetos de Controle Listas

Eventos e Funçõespágina: http://www1.univap.br/~wagner

Prof. Responsáveis

Wagner Santos C. de Jesus

Objetos de Controle

Builder C++ conta com uma barra de tarefas capaz de permitir a confecção de rotinas mas sofisticadas com relação a parte visual da aplicação.

Paleta de Ferramentas Standard.Padrão

Usando Objetos principais do C++(Builder).

Criando uma caixa de lista. (ListBox)

Atribuindo dados para caixa de lista.

Usando a propriedade Items.

Permite acrescentar em cada posição da caixa de lista um item enviado pelo métodos Add() que adiciona criando uma nova posição na caixa de texto.

Exemplo :

ListBox1->Items->Add("Maria");

ListBox1->Items->Add("José");

ListBox1->Items->Add("Célia");

Saída :

Onde o primeiro item da caixa de lista é 0 e o terceiro 2 eassim por diante. Em caso nenhum item esteja seleciona ovalor será (-1).

Capturando o Item Selecionado por intermédio da propriedade ItemIndex.

Exemplo :

int x = ListBox1->ItemIndex;

ShowMessage(x);

Obs : No exemplo acima x será um número de 0 a 2.

Capturando uma "String" da caixa de Lista. Método Strings[].

Exemplo :

int x = ListBox1->ItemIndex;

AnsiString a = ListBox1->Items->Strings[x]);

Obs : Irá retorna com a string selecionada na caixa de Lista pelo usuário armazenando o conteúdo na variável (a).

Criando uma Caixa de Combinação. (ComboBox).

Atribuindo dados para uma caixa de combinação.

Exemplo :

ComboBox1->Items->Add("Item-1");

ComboBox1->Items->Add("Item-2");

ComboBox1->Items->Add("Item-3");

ComboBox1->Items->Add("Item-4");

Saída :

Capturando dados de uma caixa de combinação.

AnsiString a = ComboBox1->Text;

Removendo dados de uma caixa de Combinação. Método Delete().

ComboBox1->Items->Add("Item-1"); ComboBox1->Items->Add("Item-2"); ComboBox1->Items->Add("Item-3"); ComboBox1->Items->Add("Item-4"); ComboBox1->Items->Delete(3);

Obs : No exemplo acima o item eliminado será (Item-4). Poiscomo na caixa de lista a caixa de combinação também iniciana posição 0 (Zero).

Atenção : Todas as propriedades e métodos usados para a caixa de lista (ListBox) valem para a caixa de combinação (ComboBox1).

Criando uma caixa de verificação. (CheckBox)

Exemplo :

CheckBox1->Checked = true;

Saida :

Obs : Marca a caixa de verificação quandorecebe verdadeiro e desmarca quando recebefalse, podendo ser usado também (0- nãoselecionado ou 1- Selecionado).

Criando botões de rádio. (RadioGroup)

Exemplo :

RadioGroup1->Items->Add("Masc.");RadioGroup1->Items->Add("Fem.");

Saída :

Capturando a informação selecionada no botão de rádio.

Exemplo :

int k = RadioGroup1->ItemIndex; if(k = = 0) ShowMessage("Masc. Foi Selecionado !!!"); else ShowMessage("Fem. Foi Selecionado !!!");

Criando uma Barra de Rolagem. (ScrollBar).

Capturando dados de uma Barra de Rolagem.

void __fastcall TForm1::ScrollBar1Change(TObject *Sender){ int y = ScrollBar1->Position; Label1->Caption = IntToStr(y);}

Obs : Uma Barra de Rolagem possui como propriedades principaisMax = 100 (determina o valor máximo que será atribuído para abarra e a propriedade Min = 0, o valor mínimo atribuído) e oPosition que retorna o valor selecionado.

Criando um Painel. (Panel).

Cria um painel para agrupamento de objetos,ou seja tudo o que acontecer em um objetoPanel acontecera também com os outrosvinculados ao mesmo painel.

Exemplo : (Panel)

No exemplo abaixo a programação irá desabilitaros dois botões usando apenas uma única linha semque seja preciso desabilitar cada botão.

Exemplo :

Panel1->Visible = 0;

Manipulando os Eventos.

Evento vem a ser qualquer tipo de operação disparada por um usuário da aplicação desenvolvida.

OnClick - Dispara o código de programa ao selecionar o objeto com o click do mouse.

Exemplo :

void __fastcall TForm1::Button1Click(TObject *Sender){ ShowMessage("Ok, Botão foi Clicado !!!");}

OnChange - Dispara o código quando um objeto sofre algum tipo de modificação.

Exemplo :

void __fastcall TForm1::Edit1Change(TObject *Sender){ ShowMessage("Houve uma entrada de dados....");}

OnEnter - Dispara o código quando o objeto for selecionado.

Exemplo :

void __fastcall TForm1::Edit1Enter(TObject *Sender){ ShowMessage("Ok, Entrei na caixa...");}

OnExit - Dispara o código quando o foco abandonar o mesmo.

Exemplo :

void __fastcall TForm1::Edit1Exit(TObject *Sender){ ShowMessage("Saindo da caixa de Texto .... ");}

OnDblClick - Dispara o código quando for selecionado com um duplo click.

Exemplo :

void __fastcall TForm1::FormDblClick(TObject *Sender){ ShowMessage("Duplo click no formulário .... ");}

OnActivate - Dispara o código após ter desenhado o formulário.

Exemplo :

void __fastcall TForm1::FormActivate(TObject *Sender){ ShowMessage("Crie o Formulário .... ");}

OnCreate - Dispara o código antes de desenhar o formulário.

void __fastcall TForm1::FormCreate(TObject *Sender){ ShowMessage("Ok");}

OnMouseDown- Dispara o código ao soltar o botão de direito do mouse.

void __fastcall TForm1::FormMouseDown(TObject *Sender,TMouseButton Button, TShiftState Shift, int X, int Y){ Form1->Caption = IntToStr(X)+" - "+IntToStr(Y);}

OnMouseMove - Dispara o código ao mover

o mouse no objeto.

void __fastcall TForm1::FormMouseMove(TObject *Sender,TShiftState Shift, int X, int Y){ Form1->Caption = IntToStr(X)+" - "+IntToStr(Y);}

OnClose - Dispara o código antes de

fechar o formúlario.

void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction&Action){ ShowMessage("Sair");}

Funções Matemáticas

Em C++ temos funções matemáticas padrãopara podemos realizar tarefas de cálculos maiscomplexos. Mas Para isso temos que conheceruma diretiva de pré-processamentodenominada <Math.h>.

Os arquivo .h são arquivo de header ou seja cabeçalhos deprogramas que permitem que algumas implementaçõesparticulares a cada aplicação possam ser desenvolvidas semque haja uma mudança na estrutura da linguagem.

Atenção : Para usarmos essas funções devemos incluir nocabeçalho do programa duas diretivas. <stdlib.h>,<math.h>.

Usando as funções Matemáticas.

Para deve se colocar nas primeira linhas do código de seu formulário a seguinte linha de código.

#include <vcl.h>#include <stdio.h>#include <math.h> <= Deve ser colocada no iniciodo programa.

Exemplo das funções matemáticas.

abs() - Retorna com o valor absoluto de um número dado.

Sintaxe :

<ExpN> = abs(<ExpN>);

Exemplo :

int k = abs(-3);

O valor da variável k será 3 positivo.

sqrt() - Retorna com o valor da raiz quadrada do número especificado.

Exemplo :

double y = sqrt(49);

O valor de y será 7.

log() - Retorna com valor do logaritmo neperianocorrespondente ao parâmetro determinado.

Exemplo :

double x = log(100) * 0.434343;

O valor será aproximadamente 2. A constante 0.434343converte o logaritmo neperiano para um logaritmo de base10.

random() - Retorna um valor aleatório entre 0 e umnúmero especificado.

Exemplo :

double x = random(100);

Retorna um número aleatório entre zero e cem.

randomize() - Ativa os número aleatórios para não evitarrepetições.

Exemplo :

randomize();

exp() - Retorna com o exponencial de um número queequivale 2.718 elevado x, onde x é número.

Exemplo :

double x = exp(1);

O valor de x será 2.718......

cos() - Retorna com o valor do cosseno de um ângulodado.

Exemplo :

double y = cos(30 * 3.16 / 180);

O valor de y será 0.8

sin() - Retorna com o valor do seno de umângulo dado.

Exemplo :

double y = sin(30 * 3.16 / 180);

O valor de y será 0.5

tan() - Retorna com o valor da tangente de um ângulodado.

Exemplo :

double y = tan(30 * 3.16 / 180);

O valor de y será 0,5773

pow() - retorna com o valor de uma base elevado a umexpoente.

Exemplo :

double z = pow(3,2);

O valor de y será 9.

Funções de Manipulação de Strings.

Atenção : Na linguagem C++, não existe um tipoString e sim AnsiString incorporado no Builder maspara fazermos manipulações de caracteres devemosusar a lógica para que aconteça, por isso cuidado.

Usando as funções de Manipulação de caracteres.

StrCat() - Concatena duas String ou seja um conjunto de caracteresdo tipo char.

Sintaxe :

StrCat(<ExpC1>,<ExpC2>);

Exemplo :

char text[30] = "Coca"; StrCat(text,"-Cola");

Será armazenado na variável text a palavra Coca-Cola.

strlen() - Retorna com o número de caracteresarmazenados em um char.

Sintaxe :

<ExpN> = strlen(<ExpC>);

Exemplo :

char lixo[10] = "Laranja"; int x = strlen(lixo); ShowMessage(x);

Quebrando uma String(*)

AnsiString a = "Maria das Couves";

ShowMessage(a[1]);

Obs:

Neste caso será pego o caracter “M” na String.

length(): Retornar o número de caracteres da String(*)

AnsiString a = “Abacaxi”;

int x = a.length();

O valor de x será igual a 7.

Exemplo pegando um caracter na String(*)

void __fastcall TForm1::Button1Click(TObject *Sender)

{

AnsiString a = "Maria das Couves";

int x = a.Length();

for(int i=1;i<=x;i++)

ShowMessage(a[i]);

}

StrComp() - Compara duas strings retornando a prioridade ou aigualdade das mesmas.

Sintaxe :

<ExpN> = StrComp(<Str1>,<Str2>);

Exemplo :

char lixo[20] = "B";char lixo2[20] = "A";int y = StrComp(lixo2,lixo);ShowMessage(y);

<0 Str1< Str2=0 Str1= = Str2>0 Str1 > Str2

StrCopy() - Copia um conjunto do tipo char formandouma String. Podendo ser armazenado em AnsiString.

Sintaxe :

StrCopy(<ExpC1>, <ExpC2>);

Exemplo :

char str1[10] = "Morango";char str2[10];StrCopy(str2,str1);AnsiString z = str2;A saída será z = "Morango".

FormatFloat() - Permite formatar um número com casasdecimais determinadas.

Sintaxe :

<ExpAnsiStr> = FormatFloat(<Formato>,<ExpN>);

Exemplo :

Edit1->Text = FormatFloat("#,##0.00",123.5678);

O valor da caixa de Texto será 123,57.

AnsiPos() - Retorna em que posição existe um determinadocaracter em um AnsiString.

Sintaxe :

<ExpN> = AnsiPos(<ExpS1>,<ExpS2>);

Exemplo :

char lixo[20] = "Letras"; int x = AnsiPos("a",lixo); ShowMessage(x);

O Valor da Variável x será 5.

c_str() – Converte uma String em um Array de caracteres do tipo (char). Sintaxe : <ObjetoString>.c_str(); Exemplo : char recebe[20]; StrCopy(recebe, Edit1->Text.c_str()); Obs : Se a caixa de texto receber a palavra morango então a variável recebe será como o diagrama abaixo.

Recebe[7] =