58
Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina POO-II. Material II-Bimestre Objetos de Controle Listas Eventos e Funções página: http://www1.univap.br/~wagner Prof. Responsáveis Wagner Santos C. de Jesus

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

  • Upload
    santo

  • View
    25

  • Download
    0

Embed Size (px)

DESCRIPTION

Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina POO-II. Material II-Bimestre Objetos de Controle Listas Eventos e Funções página: http://www1.univap.br/~wagner Prof. Responsáveis Wagner Santos C. de Jesus. Objetos de Controle. - PowerPoint PPT Presentation

Citation preview

Page 1: 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-BimestreObjetos de Controle Listas

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

Prof. ResponsáveisWagner Santos C. de Jesus

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

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.

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

Paleta de Ferramentas Standard.Padrão

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

Usando Objetos principais do C++(Builder).

Criando uma caixa de lista. (ListBox)

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

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");

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

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).

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

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.

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

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).

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

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

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

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");

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

Saída :

Capturando dados de uma caixa de combinação.

AnsiString a = ComboBox1->Text;

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

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).

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

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

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

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

Exemplo :

CheckBox1->Checked = true;

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

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).

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

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

Exemplo :

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

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

Saída :

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

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 !!!");

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

Criando uma Barra de Rolagem. (ScrollBar).

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

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.

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

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.

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

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;

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

Manipulando os Eventos.

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

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

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 !!!");}

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

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....");}

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

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

Exemplo :

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

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

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

Exemplo :

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

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

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 .... ");}

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

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

Exemplo :

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

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

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

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

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

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);}

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

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);}

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

OnClose - Dispara o código antes de fechar o formúlario.

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

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

Funções MatemáticasEm 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>.

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

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>.

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

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.

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

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.

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

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

Exemplo :

double y = sqrt(49);

O valor de y será 7.

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

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.

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

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.

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

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

Exemplo :

randomize();

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

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......

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

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

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

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

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

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

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

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

Exemplo :

double z = pow(3,2);

O valor de y será 9.

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

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.

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

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.

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

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);

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

Quebrando uma String(*)AnsiString a = "Maria das Couves";

ShowMessage(a[1]);

Obs:Neste caso será pego o caracter “M” na

String.

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

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

AnsiString a = “Abacaxi”;int x = a.length();

O valor de x será igual a 7.

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

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]);

}

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

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

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

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".

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

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.

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

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.

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

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.

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

Recebe[7] =