Ad ogni oggetto grafico comandabile è possibile associare uno script in aggiunta all’esecuzione di un’azione precostituita.

Lo script consente di definire procedure di gestione per gli eventi occorsi, ed in particolare:

 

       OnMouseEnter

Ingresso del puntatore del mouse nell’area dall’animazione

 

       OnMouseLeave

Uscita del puntatore del mouse dall’area dell’animazione

 

       OnMouseDown

Pressione del tasto del mouse in corrispondenza dell’animazione.

 

       WhileMouseDown

Evento generato periodicamente mentre il tasto del mouse rimane premuto sull’animazione

 

       OnMouseUp

Rilascio del pulsante del mouse

 

       OnClick

Click del mouse (pressione+rilascio del tasto) o attivazione da tastiera dell’animazione

       OnDblclick

Doppio click del mouse sull’animazione.

 

 

Il periodo di esecuzione della procedura WhileMouseDown è configurabile impostando la proprietà Periodo nelle proprietà di animazione. Può essere inoltre modificato internamente allo script utilizzando la funzione Period per impostare il valore desiderato. In entrambi i casi il periodo è espresso in millisecondi.

 

Allo script può essere passata una stringa di parametri impostando la proprietà CommandLine nelle proprietà di animazione. Tale stringa può essere interrogata all’interno dello script con la funzione CommandLine()

 


 

Nota: l’esecuzione dello script associato ad un’animazione ha sempre inizio con un evento. Occorre pertanto selezionare dalla casella delle procedure predefinite le procedure relative agli eventi che si desidera gestire:

 

 

 

Nota: Gli script legati all’animazione vengono conservati copiando e incollando l’animazione stessa.

 

 

Note sulla generazione degli eventi

 

         La sequenza degli eventi in un’operazione di doppio click è la seguente:

OnMouseDown
OnMouseUp
OnClick
OnDblClick
OnMouseUp

 

Se per l’oggetto è stata configurata anche un’azione precablata, questa viene eseguita dopo la gestione dell’evento OnMouseUp.

 

         Se il tasto del mouse viene premuto mentre il puntatore è sopra un’animazione e rilasciato sopra un’altra animazione la sequenza degli eventi è la seguente:

OnMouseDown

Animazione1

OnMouseUp

Animazione1

OnClick

Animazione1

OnMouseLeave

Animazione1

OnMouseEnter

Animazione2

 

         Se è presente la dichiarazione di una procedura di evento, anche se vuota, l’animazione viene considerata attiva: se essa fa parte di un gruppo l’azione viene quindi intercettata dall’animazione e non dal gruppo, mentre gli eventi non gestiti vengono intercettati dal gruppo. È dunque generalmente consigliabile rimuovere le dichiarazioni delle procedure di evento non gestite.