Création d'espaces de dessin
Remonter à Utilisation des graphiques et du multimédia : Vue globale
La classe Vcl.Graphics.TCanvas encapsule un contexte de périphérique Windows. Elle gère tous les dessins pour les fiches, les conteneurs visuels (tels que les volets) et l'objet imprimante (voir Impression). En utilisant l'objet canevas, vous n'avez pas besoin d'allouer crayons, pinceaux ou palettes : ils sont alloués et libérés automatiquement.
TCanvas propose un grand nombre de routines de dessin primitives pour dessiner des lignes, des formes, des polygones, du texte, etc. dans tout contrôle contenant un canevas. Par exemple, voici un gestionnaire d'événement de bouton qui dessine une ligne du coin supérieur gauche vers le milieu de la fiche, et affiche du texte brut sur cette fiche :
procedure TForm1.Button1Click(Sender: TObject); begin Canvas.Pen.Color := clBlue; Canvas.MoveTo( 10, 10 ); Canvas.LineTo( 100, 100 ); Canvas.Brush.Color := clBtnFace; Canvas.Font.Name := 'Arial'; Canvas.TextOut( Canvas.PenPos.x, Canvas.PenPos.y,'Fin de la ligne’ ); end;
void __fastcall TForm1::Button1Click(TObject *Sender) { Canvas->Pen->Color = clBlue; Canvas->MoveTo(10, 10); Canvas->LineTo(100, 100); Canvas->Brush->Color = clBtnFace; Canvas->Font->Name = "Arial"; Canvas->TextOut(Canvas->PenPos.x, Canvas->PenPos.y, "Fin de la ligne" ); }
L'objet TCanvas défini dans l'unité Graphics vous protège également contre les erreurs graphiques courantes de Windows, par exemple en restaurant les contextes de périphériques, crayons, pinceaux, etc. à la valeur qu'ils avaient avant l'opération de dessin. TCanvas est utilisé partout dans la VCL lorsqu'il est nécessaire ou possible de dessiner, et il permet de le faire d'une manière à la fois simple et fiable.