No ActionScript 3 (AS3), os eventos do mouse são um tipo de evento que ocorre quando um usuário interage com o mouse sobre um objeto de exibição (como um botão, imagem ou clipe de filme) no palco. Esses eventos permitem criar elementos interativos em seus aplicativos flash. Eles são despachados pela classe `DisplayObject` e suas subclasses.
Aqui estão alguns eventos importantes do mouse no AS3:
*
`mouseevent.click`: Despachado quando o usuário clica no botão do mouse sobre um objeto de exibição. Este é o evento mais comum do mouse.
*
`mouseevent.double_click`: Despachado quando o usuário clica duas vezes no botão do mouse sobre um objeto de exibição.
*
`mouseevent.mouse_down`: Despachado quando o usuário pressiona um botão do mouse enquanto o cursor do mouse está acima de um objeto de exibição.
*
`mouseevent.mouse_up`: Despachado quando o usuário libera um botão de mouse depois de pressioná -lo enquanto o cursor está acima de um objeto de exibição.
*
`mouseevent.mouse_over`: Despachado quando o cursor do mouse se move sobre um objeto de exibição.
*
`mouseevent.mouse_out`: Despachado quando o cursor do mouse se afasta de um objeto de exibição.
*
`mouseevent.mouse_move`: Despachado quando o cursor do mouse se move enquanto está acima de um objeto de exibição. Este evento dispara repetidamente à medida que o mouse se move.
*
`mouseevent.roll_over`: Semelhante a `mouse_over`, mas com algumas diferenças importantes. `Roll_over` é despachado apenas uma vez quando o mouse entra em um objeto de exibição, mesmo que se mova dentro do objeto. Muitas vezes, é preferido para otimizar o desempenho, pois reduz o número de eventos disparados.
Como usar eventos do mouse: Você usa o `addEventListener` para ouvir esses eventos. Você especifica o tipo de evento e uma função a ser executada quando o evento ocorre.
`` `ActionScript
importar flash.events.mouseevent;
// Obtenha uma referência a um objeto de exibição (por exemplo, um botão)
var myButton:MyButton =new MyButton ();
Addchild (MyButton);
// Adicionar ouvintes de eventos
mybutton.addeventListener (mouseevent.click, handleclick);
mybutton.addeventListener (mouseevent.mouse_over, handleMouseOver);
mybutton.addeventListener (mouseevent.mouse_out, handleMouseout);
// Funções de manipulador de eventos
função handleclick (evento:mouseevent):void {
rastreio ("Button clicou!");
// Adicione o botão Clique em lógica aqui
}
função handleMouseOver (evento:mouseevent):void {
traço ("Mouse sobre o botão!");
// Alterar a aparência do botão, etc.
}
função handleMouseout (evento:mouseevent):void {
traço ("Mouse fora do botão!");
// Aparência do botão Restaurar, etc.
}
`` `
Considerações importantes: *
Evento Bubling: Eventos de mouse borbulham a lista de exibição. Isso significa que, se um evento ocorrer em um objeto infantil, ele também será despachado em seus pais e assim por diante, na hierarquia. Você pode usar o `event.stopPropagation ()` para evitar esse borbulhante.
*
direcionamento: A propriedade `Event.Target` de um objeto Mouseevent fornece uma referência ao objeto de exibição que recebeu inicialmente o evento. Isso é crucial ao lidar com objetos aninhados ou bolhas de eventos.
*
desempenho: O uso excessivo de `mouse_move` pode afetar o desempenho, especialmente em aplicativos complexos. Use -o com moderação e considere métodos alternativos se precisar de atualizações frequentes com base na posição do mouse. `Roll_over` e` roll_out` são geralmente melhores opções para efeitos de pairar.
Esses eventos de mouse são fundamentais para criar aplicativos interativos e responsivos no ActionScript 3. Compreender como usá-los efetivamente é essencial para o desenvolvimento de projetos bem-sucedidos baseados em flash. Lembre -se de consultar a referência do Adobe ActionScript 3.0 e componentes para obter as informações mais detalhadas.