logo  
Associação

Para a atividade de relacionar dois elementos, utilizaremos dois tipos de clipes de filme:
  • um para o nome das cidades, com funções de arrastar e soltar;
  • outro para definir a área das figuras

1 - Componentes

Para criar o layout dessa atividade, vamos utilizar:

  • botões da Biblioteca de botões;
  • uma caixa de texto estático para a pergunta;
  • quatro clipes de filme para os nomes das cidades;
  • quatro clipes de filme com a ilustração das cidades.

2 - Ações

Teremos as seguintes situações nesta atividade:

  • os nomes das cidades serão arrastáveis;
  • se o botão "refazer" for clicado, os nomes das cidades voltarão para a sua posição inicial;
  • se os nomes das cidades estiverem sobre as ilustrações das suas respectivas cidades, uma mensagem positiva será enviada e a atividade encerrada;
  • caso contrário, uma mensagem negativa será enviada e a atividade será encerrada.

Agora, implementaremos os seguintes códigos:

  • Para que os nomes das cidades sejam arrastáveis, utilizaremos um botão transparente para cada cidade:

    Código inserido no botão transparente

    on (press) {
        startDrag (this, true);
      }
    on (release) {
        stopDrag ();
      }

  • Para que o botão "refazer" posicione os nomes das cidades na sua posição inicial, devemos, primeiro, gravar as coordenadas dessas posições em variáveis, cujos valores serão utilizados no reposicionamento posteriormente.

    Código inserido no primeiro frame da camada "acoes"

    // definicao da posicao dos nomes das cidades
    poax = getProperty("poa", _x);
    poay = getProperty("poa", _y);
    sampax = getProperty("sampa", _x);
    sampay = getProperty("sampa", _y);
    riox = getProperty("rio", _x);
    rioy = getProperty("rio", _y);
    salvadorx = getProperty("salvador", _x);
    salvadory = getProperty("salvador", _y);

    Código inserido no botão "refazer"

    on (release) {
        setProperty (_root.poa, _x, poax);
        setProperty (_root.poa, _y, poay);
        setProperty (_root.sampa, _x, sampax);
        setProperty (_root.sampa, _y, sampay);
        setProperty (_root.rio, _x, riox);
        setProperty (_root.rio, _y, rioy);
        setProperty (_root.salvador, _x, salvadorx);
        setProperty (_root.salvador, _y, salvadory);
          mensagem = "";
    }

  • Falta apenas testar se os nomes das cidades estão posicionados sobre as ilustrações corretamente.

    Código inserido no botão "resposta"

    on (press) {
           if (resposta == false) {
              resposta = true;
              if ((_root.poa._droptarget == "/guaiba")
               && (_root.rio._droptarget == "/cristo")
               && (_root.sampa._droptarget == "/centro")
               && (_root.salvador._droptarget == "/elevador")) {
                 mensagem = "Uau, você conhece mesmo o Brasil! ;-)";
              } else {
                 mensagem = "Pelo jeito você não prestou muita atenção nas suas aulas de História!";
       }
    }

Programa Anterior Próxima
UFRGS/CINTED 2006 © Todos os direitos reservados.
Permitido o uso educacional, desde que citada a fonte.