1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| Program WCRTFond;
Uses Strings, WinTypes, WinProcs, WinCRT;
Var hFenetre : HWnd;
DC : hDC;
RectClient : tRect;
AncienPinceau, Pinceau : hBrush;
AncienModeFond : Integer;
AncienneCouleurTexte : TColorRef;
Chaine : Array [0..79] of Char;
Begin
InitWinCRT;
(* Détermination du handle de la fenêtre *)
hFenetre := GetFocus;
(* Obtention d'un contexte de périphérique *)
DC := GetDC(hFenetre);
(* Création d'un pinceau rouge *)
Pinceau := CreateSolidBrush(RGB(255,0,0));
(* Détermination des coordonnées de la zone client *)
GetClientRect(hFenetre,RectClient);
(* Dessin d'un rectangle couvrant toute la fenêtre *)
AncienPinceau := SelectObject(DC,Pinceau);
Rectangle(DC,RectClient.Left,RectClient.Top,RectClient.Right,RectClient.Bottom);
(* Dessin de texte blanc à la position du curseur *)
AncienModeFond := SetBkMode(DC,Transparent);
AncienneCouleurTexte := SetTextColor(DC,RGB(255,255,255));
StrCopy(Chaine,'Que c''est beau !');
TextOut(DC,20,20,Chaine,StrLen(Chaine));
(* Restauration de l'état original du contexte de périphérique *)
SelectObject(DC,AncienPinceau);
SetTextColor(DC,AncienneCouleurTexte);
SetBkMode(DC,AncienModeFond);
(* Destruction du pinceau rouge créé *)
DeleteObject(Pinceau);
(* Libération du contexte de périphérique *)
ReleaseDC(hFenetre,DC);
ReadLn;
DoneWinCRT;
End. |
Partager