Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

[Super Tutotial] Usar vars, memo, gauge e mais - Para iniciantes


Surfistinha£
 Compartilhar

Posts Recomendados

Usar vars, memo, gauge e mais - Para iniciantes

 

Este aqui é um pequeno tutotial que ensina muita coisa!!

Dentre elas:

  • Fazer contas matemáticas.
  • Usar um memo.
  • Usar um gauge.
  • Usar variável intege e string.
  • Vários comandos.
  • Lógica de Pogramação.

 

Adicione no form:

  • 2 label.
  • 1 spinedit (Que fica na parte Samples).

 

Agora no spinedit vá na aba events e no OnChange adicione os seguintes comandos:

 

var

v : integer;

begin

v := 250;

 

label1.Caption := '250 - ' + IntToStr(spinedit1.value) + ' =';

v := v - spinedit1.value;

 

label2.caption := IntToStr(v);

 

Agora a explicação!

 

Cada objeto tem seu events, no caso do event OnChanger do spinedit é ativa a cada atualização que ocorre no value dele.

var

v : integer;

Cria as colunas de variáveis, que no caso é v que é integer.

Ps: integer siguinifíca que é número.

v := 250;

Afirma ao Delphi que a variável v tem seu valor de 250.

label1.Caption := '250 - ' + IntToStr(spinedit1.value) + ' =';

Atualiza o caption da label1.

v := v - spinedit1.value;

Manda o Delphi fazer a conta de v - spinedit1, lembra que afirmamos que o valor de v é 250?

 

E armazena o resultado na variável v.

label2.caption := IntToStr(v);

Substitui o caption antigo da label2 para o resultado.

 

 

 

Agora vamos fazer um pouco mais avançado!

Vamos supor que você esteja fazendo um jogo, e em uma certa parte o herói presise comprar equipamentos! E agora?? Como fazer??

Muito simples!

Inicie um novo projeto...

 

Agora adicione:

  • 4 label.
  • 1 Shape ou image.
  • 1 pop menu.
  • 1 button (ou bitbtn).
  • 1 memo.

 

Uma label será seu dinhero.

Uma label ficará do lado do dinhero com o nome dinhero, só pra facilitar a sua e minha vida.

Uma label ficará em cima do memo com o nome de equipamentos ou de sua preferencia.

Os shape será a imagem do equipamento.

O button (ou bitbtn) ficarão embaixo do shepe com o caption "Comprar".

A utima label ficara em cima do shape para mostrar o preço e o nome.

 

No meu caso coloquei os seguintes preço e nome do equipamento:

R$ 100. Espada.

 

O dinhero inicial eu coloquei 400.

 

 

A compra:

Inicialmente, apague o texto Memo1 no memo e deixe ele com enabled false.

d : integer;

Para o Delphi saber o valor do dinhero adicione o seguinte comando na parte das var globais:

d := 400;

Para já se iniciar com o Delphi sabendo o valor de d, va no form e no events OnCreat adicione o seguinte comando:

if d > 99 then

begin

d := d - 100;

memo1.lines.add ('Espada.');

label1.caption := IntToStr(d);

button1.enabled := false;

end;

No button1 adicione o seguinte comando:

Explicando:

if d > 99 then

Confere se você tem dinhero suficiene para comprar o equipamento.

Não coloquei > 100 pois se tivese exatamente 100 não daria, pois o simbolo > siguinifica maior, ou seja, se fosse > 100 só seria valido 101, 102, 103 e assim por diante.

d := d - 100;

Diminui o seu dinhero em 100 pontos.

memo1.lines.add ('Espada.');

Adicione no memo1 o texto Espada.

label1.caption := IntToStr(d);

Subistitui o texto da label1 antigo para o valor do d, que no caso representa o seu dinhero.

button1.enabled := false;

Deixa o button1 desabilitado.

 

 

 

E agora caso não tenha dinhero não aconteçerá nada!

Vamos fazer algo básico, como por exemplo, apareçer uma mensagem falando que você não tem dinhero!

Adicione o comando no button1 abaixo do primero end:

if d < 100 then ShowMessage('Não tem dinhero suficiente');

Explicando...

if d < 100 then ShowMessage('Não tem dinhero suficiente');

Ver se seu dinhero é menor que 100, desta vez tem que ser 100 e não 99 ou 101!

 

 

Você - E pra que este tal de PopMenu?? Pra que serve????

Eu - Ao clicar no "botão errado do mouse" (o direito) apareçe a janelinha, pareçido com o MainMenu.

 

Apague o Sahpe e adicione no seu lugar uma image em seu lugar, ponha qual quer foto, não presisa ser de uma espada mesmo.

 

Clique duas vezes no PopMenu e verá uma nova janela que irá apareçer, coloque no caption Descrição da Arma e aperte a tecla Enter. Verá que apareçerá uma nova barrinha!! Clique nela e aperte Tentar Roubar.

 

Agora saia da janelinha do PopMenu e clique na Image1, nas suas características procure a PopMenu, clique na setinha que tem do lado e escolha a PopMenu1.

Aperte F9 e olhe! Clique no botão direito do mouse e verá que apareçeu uma PopMenu!

 

Agora vamos por as funções do PopMenu!

 

Adicione

  • 1 memo.
  • 1 gauge.

 

Deixe o memo2 e o gauge1 em visible false.

Clique 2x no popmenu e depois 2x na primera opção (Descrição da Arma).

Nós iremos fazer um efeito bonitinho, onde cada palavra apareçe 1x a cada 0,1 segundo. Iremos fazer da forma mais fácil, mas não a mais rápida.

var

de : string;

begin

de := '';

memo2.clear;

memo2.visible := true;

 

de := de + 'Esta ';

memo2.Lines.add (de);

Sleep(100);

memo2.clear;

de := de + 'arma ';

memo2.Lines.add (de);

Sleep(100);

memo2.clear;

de := de + 'possui ';

memo2.Lines.add (de);

Sleep(100);

memo2.clear;

de := de + 'um ';

memo2.Lines.add (de);

Sleep(100);

memo2.clear;

de := de + 'baixo ';

memo2.Lines.add (de);

Sleep(100);

memo2.clear;

de := de + 'poder ';

memo2.Lines.add (de);

Sleep(100);

memo2.clear;

de := de + 'de ';

memo2.Lines.add (de);

Sleep(100);

memo2.clear;

de := de + 'ataque';

memo2.Lines.add (de);

Sleep(100);

memo2.clear;

de := de + '.';

memo2.Lines.add (de);

Sleep(900);

memo2.visible := false;

Explicando os novos comandos:

de : string;

String que dizer texto, ou seja, a var de é um texto, diferente da d que é uma variável.

memo2.clear;

Apaga todo o texto do memo2.

memo2.visible := true;

Deixa o memo2 visível.

de := de + 'Esta ';

Aumenta o de em uma palavra ou frase, diferente da d que é intege esta é texto, portanto armazena somente texto!

memo2.Lines.add (de);

Adicione no memo2 texto, que neste caso é da variável de.

Sleep(100);

Sleep quer dizer dormi, ou seja, deixa todo o form parado.

1000 é 1 segundo, logo 100 é 0,1 segundo.

 

 

Agora vamos por a função roubar!

 

Clique 2x no PopMenu1 e escolha a segunda função (Tentar Roubar), clicando 2x nela.

 

Adicione os seguintes comandos:

var

r : integer;

begin

randomize;

r := random(99);

 

gauge1.visible := true;

gauge1.progress := gauge1.progress + 10;

sleep(100);

gauge1.progress := gauge1.progress + 10;

sleep(100);

gauge1.progress := gauge1.progress + 10;

sleep(100);

gauge1.progress := gauge1.progress + 10;

sleep(100);

gauge1.progress := gauge1.progress + 10;

sleep(100);

gauge1.progress := gauge1.progress + 10;

sleep(100);

gauge1.progress := gauge1.progress + 10;

sleep(100);

gauge1.progress := gauge1.progress + 10;

sleep(100);

gauge1.progress := gauge1.progress + 10;

sleep(100);

gauge1.progress := gauge1.progress + 10;

sleep(100);

 

if r < 69 then

begin

memo2.visible := true;

memo2.clear;

memo2.lines.add ('Você conseguiu roubar!');

memo1.Lines.add ('Espada');

sleep(2000);

memo2.visible := false;

gauge1.Visible := false;

image1.PopupMenu.AutoPopup := false;

end;

 

if r > 70 then

begin

memo2.visible := true;

memo2.clear;

memo2.lines.add ('Você falhou no roubo.');

sleep(2000);

memo2.visible := false;

gauge1.Visible := false;

d := d - 400;

label1.caption := IntToStr(d);

end;

Explicando as novidades:

randomize;

Faz com que der mais chançe em números aleatórios.

r := random(99);

Randomiza a variável r em números entre 0 a 99.

gauge1.progress := gauge1.progress + 10;

Aumenta o progresso do gauge1 em 10 pontos.

image1.PopupMenu.AutoPopup := false;

Faz com que o PopMenu não funcione mais na image1.

 

 

 

Hmm...

É feio deixar o memo2 sumindo dessa forma, vamos deixa-lo sumir ficando menor aos poucos!

 

Crie um novo timer (que fica na aba 4° aba) e altere o interval dele para 100 e deixe ele com enabled false.

 

Clique 2x no timer e adicione o seguinte comando:

memo2.height := memo2.height - 1;

 

if memo2.height = 0 then

begin

memo2.Visible := false;

memo2.Height := 73;

timer1.Enabled := false;

end;

E agora no PopMenu na parte Tentar Roubar substitua a linha abaixo

memo2.visible := false;

por

timer1.enabled := true;

Isso vale para os 2 casos.

 

Créditos

Kaao

Link para o comentário
Compartilhar em outros sites

Mas surf, presta mais atençao na hora de escrever o nome do topico: " [super TUTOTIAL]" =P

 

euri....

 

Cara Muito Bom Mesm... Dá pra enteder bastante as teorias dos codes etc..

 

Vlw ^^

Link para o comentário
Compartilhar em outros sites

Mas surf, presta mais atençao na hora de escrever o nome do topico: " [super TUTOTIAL]" =P

 

vei e que eu to meu meu outro pc e o teclado dar muitos\ erros por isso q saiu assi lol¥ vo concertar

 

vlw

Link para o comentário
Compartilhar em outros sites

  • 2 semanas atrás...
Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.