Come retaggio del Flash4, una delle tecniche più usate per creare un puntatore del mouse personalizzato, era quello di associare al movieclip ontenente la forma da trascinare, il seguente script:
onClipEvent(load){
this.startDragtrue);
Mouse.hide();
}
Con questo script, si inizializzava il trascinamento del movieclip stesso (this.startDrag) centrandolo sul puntatore del mouse (true), e si nascondeva il puntatore originale (Mouse.hide()).
Questo script, è fortemente influenzato dal frame rate, e associare lo script ad un enterFrame, decisamente non cambia le cose. L’unico modo per rendere il trascinamento alquanto fluido, è alzare il frame rate. Questo è l’effetto che si ottiene con 12 FPS (cliccando sulla scritta in alto a destra, si può visualizzare il puntatore orignale, confronando le distanze nel trascinamento.
<object classid=”clsid:D27CDB6E-AE6D-11cf-96B8-444553540000″
codebase=”http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0″ width=”400″ height=”100″>
<param name=movie value=”https://static.html.it/app/uploads/documenti/faq/files/tecniche_varie/cursore1.swf”>
<param name=quality value=high>
<embed src=”https://static.html.it/app/uploads/documenti/faq/files/tecniche_varie/cursore1.swf” quality=high
pluginspage=”http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash” type=”application/x-shockwave-flash” width=”400″ height=”100″>
</embed>
</object>
Modificando lo script in questo modo:
onClipEvent(load){
Mouse.hide();
}
onClipEvent(mouseMove){
_x = _root._xmouse;
_y = _root._ymouse;
updateAfterEvent ();
}
otterremo uno script che stabilisce la posizione del mouse, e su questa imposta quella del cursore. L’updateAfterEvent, serve a forzare un refrash del player alla fine di ogni “ciclo”. La differenza tra i due script è evidentissima, anche considerando che il secondo script è totalmente indipendente dal frame rate.
<object classid=”clsid:D27CDB6E-AE6D-11cf-96B8-444553540000″
codebase=”http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0″ width=”400″ height=”100″>
<param name=movie value=”https://static.html.it/app/uploads/documenti/faq/files/tecniche_varie/cursore2.swf”>
<param name=quality value=high>
<embed src=”https://static.html.it/app/uploads/documenti/faq/files/tecniche_varie/cursore2.swf” quality=high
pluginspage=”http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash” type=”application/x-shockwave-flash” width=”400″ height=”100″>
</embed>
</object>