NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!
UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI
Objetivo:
Olá pessoal, neste tutorial vamos aprender a fazer uma animação que exibe frases aleatórias à medida que o usuário clicar sobre o botão avançar, um detalhe muito importante é que tais frases serão exibidas sem no entanto repetir nenhuma frase até o final de sua quantidade total, retomando assim para o inicio.
Pré-requisitos: Conhecimento básico em Action Script(programação no flash).
1º Passo: Crie um novo documento pressionando as teclas de atalho CTRL+N e altere as suas propriedades pressionando as teclas de atalhos CTRL+J:
550 Largura(Width) x 400 Altura(Height);
2º passo: Desenhe um quadro conforme a figura abaixo, acima do quadro como mostrado na figura insira a seguinte frase:
Pressione o botão para verificar as frases
Insira também de acordo com a figura um botão, que será usado para avançar na exibição das frases.
3º passo: Selecione o botão e pressione a tecla de atalho F9 para exibir a área de programação e insira o seguinte código:
//ao pressionar o botão
on (press) {
/*seta a variável alertar com vázio, variável
está responsável por exibir ao usuário que todas
as frases foram vistas*/
_root.alertar
= "";
//gera
um valor aleatório e armazena na variável índice
indice
= random(6);
//verifica
se esta é a primeira frase a ser mostrada
if
(_root.a == 0) {
//seta
o vetor aux com o valor que foi sorteado aleatoriamente
_root.aux[_root.a]
= indice;
//exibe
a frase na tela
_root.exibe_frase
= _root.frase[indice];
//incrementa
a variável
_root.a++;
}
else {
/*chama a função que verifica se o valor sorteado
aleatoriamente já sai ou não, caso não tenha sido
sorteado anteriormente executa o seguinte trecho de código*/
if
(_root.verifica(_root.aux, indice) == false) {
//seta
o vetor aux com o valor sorteado aleatoriamente
_root.aux[_root.a]
= indice;
//exibe
a frase na tela
_root.exibe_frase
= _root.frase[indice];
//incrementa
a variável
_root.a++;
} else {
//condição
para não entrar em loop infinito
if
(_root.a<6) {
/* enquanto a função _root.verifica retornar verdadeiro,
ou seja enquanto o número sorteado for igual a algum número
que já tenha sido sorteado anteriormente*/
while
(_root.verifica(_root.aux, indice) == true) {
//outro
númeor é sorteado
indice
= random(6);
}
/*insere no vetor aux, quando depois de executar a estrutura de
repetição encontra um valor que ainda não foi sorteado
até o momento */
_root.aux[_root.a]
= indice;
//exibe
a frase na tela
_root.exibe_frase
= _root.frase[indice];
//incrementa
variável
_root.a++;
}
}
}
/*
se todas as frases foram sorteadas*/
if(_root.a
== 6)
{
//mostra
ao usuário que o mesmo viu todas as frases
_root.alertar = "Você viu todas as frases pressione
o botão avançar p/ revelas";
/*seta a variável _root.a com 0, pois está variável é responsável
por controlar a quantidade de frases que foram sorteadas até o
momento, fazendo isso para poder rever as frases*/
_root.a
= 0;
i
= 0;
/*seta todo o vetor aux com um valor que não será sorteado
no random, pois é a partir dos valores deste vetor que faremos
as comparações para verificar se um valor foi ou não
sorteado*/
while(i < _root.aux.length)
{
//seta
cada elemento do vetor com o valor 11
_root.aux[i]
= 11;
//incrementa
a estrutura de repetição
i++;
}
}
}
Explicação:
Quando o usuário clicar sobre o botão avançar, um valor aleatório é gerado através da função random(parâmetro), observação o parâmetro da função random(), gera um valor aleatório entre o número zero e um número a menos do valor passado como parâmetro, este valor depois de verificado através da função _root.verifica informa se o número foi sorteado ou não até o momento, caso não tenha sido sorteado até o momento ele é usado em um vetor como índice para exibir a frase, caso ele já tenha sido sorteado um novo valor aleatório é gerado até que este índice seja diferente dos sorteados até então.
O vetor _root.aux é usado para armazenar os índices que já foram sorteados, pois este vetor será usado na função _root.verifica que verifica todos os elementos do vetor _root.aux com o índice sorteado no momento e retorna true(verdadeiro) caso este índice já tenha sido sorteado ou false(falso) caso ele ainda não tenha sido sorteado, como será mostrado logo abaixo no código da função _root.verifica.
4º passo: Agora selecione o primeiro quadro chave(Keyframe) de nossa animação e insira o seguinte código dentre de deste frame:
//variável que controla a quantidade de números
que já foram sorteados
a = 0;
/* vetor que armazena os indices que foram sorteados até o
momento, para evitar que uma frase se repita até o termino de
todas as frases a serem exibidas */
aux = new Array();
/*Você deve inserir as suas frases dentro de cada dupla
de aspas */
var frase = new Array
("Frase
de nº 1",
"Frase
de nº 2",
"Frase
de nº 3",
"Frase
de nº 4",
"Frase
de nº 5",
"Frase
de nº 6");
//função que verifica se a frase já foi
sorteada
function
verifica(a, indice)
{
i
= 0;
//percorre
todo o vetor aux, passado como parâmetro
while
(i<6)
{
/*
condição que verifica se o indice já foi sorteado
anteriormente */
if
(a[i] == indice)
{
return
true;
}
i++;
}
return
false;
}
Explicação:
a - > para que possamos saber a quantidade de números que foram sorteados até o momento, está variável é incrementa toda vez que um índice que ainda não foi sorteado anteriormente é sorteado.
aux = new Array() - > vetor que como dito anteriormente armazena os índices sorteados até o momento, este vetor é usado para verificar se um valor sorteado foi ou não sorteado anteriormente.
var frase = new Array() -> vetor que armazena as frases que serão exibidas ao usuário.
A função verifica recebe como parâmetro o vetor aux e o índice que foi sorteado no momento, ela percorre todo o vetor aux, que como dito anteriormente armazena todos os índices sorteados até o momento, para comparar com o índice sorteado no momento com todos os valores do vetor aux.
5º passo: Agora para finalizarmos nossa animação, vamos declarar as variáveis, que serão responsáveis por exibir as frases ao usuário bem como indicar o fim das frases, declare as variáveis com os seguintes nomes e conforme a figura abaixo:
exibe_frase - > variável que mostra ao usuário as frases sorteadas aleatoriamente, alinhe está variável para que ela fique ao centro do quadro mostra no inicio do tutorial.
alertar - >variável que mostra uma mensagem ao usuário quando este completou todas as frases a serem vistas, alinhe esta mensagem logo abaixo do quadro.
Para criar estas variáveis selecione a ferramenta text tool() ou pressione a tecla de atalho (T) para ativa-lá, feito isso desenhe no documento o comprimento e altura de visibilidade do conteúdo de sua variável, não se esqueça de alterar a cor da variável e as suas propriedades como indicado na figura abaixo:
Você deve alterar a altura e a largura da variável de acordo com o conteúdo que você deseja mostrar, por exemplo se você tiver uma frase grande que deverá ser exibida em várias linha você deverá ajustar o sua altura e possivelmente a sua largura.
Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434
Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208
Todos os direitos reservados, Júlio Battisti 2001-2024 ®
LIVRO: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2016 - CURSO COMPLETO E PRÁTICO
DOMINE A PROGRAMAÇÃO VBA NO EXCEL - 878 PÁGINAS - CLIQUE AQUI