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

Código mais enxuto

Utilizei Arrow Function depois de ver a dica do instrutor e o código ficou ainda mais curto:

<meta charset="UTF-8">
<canvas width="600" height="400"></canvas>

<script>
    let tela = document.querySelector('canvas');
    let pincel = tela.getContext('2d');
        pincel.fillStyle = 'lightgrey';    
        pincel.fillRect(0, 0, 600, 400); 
        let raio = 5;
        let botaoEsquerdoAcionado = false;

    // usando as Arrow function:
    tela.onmousemove = (dadosEvento) => {
        let x = dadosEvento.pageX - tela.offsetLeft;
        let y = dadosEvento.pageY - tela.offsetTop;

        if (botaoEsquerdoAcionado) {
            pincel.beginPath();
            pincel.arc(x, y, raio, 0, 6.28);
            pincel.fillStyle = "blue";
            pincel.fill();
        }
    }

    tela.onmousedown = () => {botaoEsquerdoAcionado = true};
    tela.onmouseup = () => {botaoEsquerdoAcionado = false};

</script>
2 respostas

Oi Carlos

Excelente!

Parabéns pelo empenho nos estudos!

Qualquer dúvida pode contar com a gente.

solução!

Muito obrigado Guilherme!

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