Solucionado (ver solução)
Solucionado
(ver solução)
7
respostas

Exercício 2: cliques do mouse

Pessoal,

Como eu penei muito para encontrar informação e resolver este exercício, acredito que outros devem estar passando pelo mesmo problema! Por isso, resolvi colocar meu código (todo comentado) aqui. Acho que assim podemos nos ajudar. Se alguém fez diferente, convido a postar também para vermos outras formas de resolver o problema. Segue:

'''

'''
7 respostas

'''

'''

```

```

Alguém sabe como postar o código? Estou tentando mas não sai nada!

Acho que você está colocando aspas simples em vez de backstick, seria o ` e nao o ', o mesmo que você coloca em "à".

Cl2b2r, nessa caixa de resposta, quando você for postar código clique no ícone acima com o símbolo "101 010", então vai aparecer a frase enter code here (é onde você deverá colar seu código). Não apague os sinais ```

Abraço!

solução!

Ok pessoal,

Aqui está o código:

<canvas id="tela" width="600" height="400"></canvas>

<script>

var tela = document.getElementById("tela");
var c = tela.getContext("2d");

c.fillStyle = "gray"
c.fillRect(0,0,600,400);

var cor;

//Funcao para desenhar os circulos
var desenhaCirculos = function(x,y)
{
    /*Marca o clique com uma bola azul (raio 10) no local */
    c.fillStyle = cor;
    c.beginPath();
    c.arc(x, y, 10, 0, 2 * 3.14);
    c.fill();
};

//Funcao para monitorar o botao do mouse clicado e atribuir cor. 0 esquerdo e 2 direito
tela.addEventListener('mousedown', function qualBotao(evento)
{
    var x = evento.pageX - tela.offsetLeft;
    var y = evento.pageY - tela.offsetTop;

    if(0 == evento.button)
    {
        cor = "blue";
    } else if (2 == evento.button)
    {
        cor = "red";
    }

//Loga no console a posicao do clique
console.log("Posicao do clique: " + x + ", " + y);

//Chama a funcao para desenhar o circulo
desenhaCirculos(x, y, cor);
}, true);

//Desabilita o menu com o botao direito
var desabilitar = function()
{
    return false;
};

document.oncontextmenu = desabilitar;

</script>

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software