Manuel §2.25.1    

Fonction SetPaintFunction

La fonction SetPaintFunction permet de définir la fonction qui sera automatiquement appelée par Sisal lors de la peinture du canevas.

SetPaintFunction( NomDeFonctionDePeinture);

La fonction attend le nom d'une fonction de peinture ; une fonction de peinture est une fonction qui attend en paramètre un DC (device context) et effectue des appels de fonctionss graphiques en transmettant ce même DC.

Par exemple pour afficher l'heure dans un canevas on peut définir.

Object
cnHeure Canvas, "", 10, 10, 120, 32;
...
Function PeintHeure( DC)
var str;
dcSetFont( dc, "Arial", 24);
dcSetTextForeground( dc, RGB( 0, 255, 0));
tr = Format( "%.19t", Now());
dcDrawText( dc, str, 10, 10);
end
...
On do begin
cnHeure.SetPaintFunction( PeintHeure);
end
...
On Horloge.ToutesLesSecondes do cnHeure.Invalidate();

Toutes les secondes on invalide cnHeure, c'est à dire on dit à Sisal que son contenu est pas à jour ; et donc Sisal relance l'appel de la fonction PeintHeure.