Pour l'instant chaque clic crée la même ellipse. On va modifier un peu le script en introduisant une variable appelée decal, que l'on va ajouter aux coordonnées et dont on modifiera la valeur à chaque clic sur le bouton. Modifier le script comme ceci :
 
Script 5b
Sub Click(Source As Buttoncontrol)
 Set r=[a].newellipse(7000+2*decal,2000+2*decal,9000+decal,4000+decal)
 decal=decal+100
 r.edgecolor.colorname="dark orange"
 r.edgelinewidth=$thin
 r.background.backcolor.colorname="black"
 r.background.color.colorname="orange"
 r.background.pattern=35
End Sub


La 3ème ligne du script signifie qu'on va augmenter decal de 100 à chaque clic : la nouvelle valeur de decal (à gauche du signe égal) sera égale à sa valeur actuelle (à droite du signe égal) + 100.

Toutefois si vous cliquez sur le bouton vous constatez que les ellipses sont toujours identiques.
Cela vient du fait que la variable appelée decal n'apparaît que dans le script Click du bouton 1 : pour Lotus 123 cette variable appartient donc uniquement à ce script. Elle est détruite après chaque exécution du script et recréée lors de chaque exécution. Pour qu'elle soit conservée en mémoire il faut la déclarer comme variable globale.
 
©2003 Scientillula.net