Section courante

A propos

Section administrative du site

BEGINPAINT

Début de la peinture
Turbo Pascal pour Windows WINPROCS

Syntaxe

Function BeginPaint(Wnd:HWnd;Var Paint:TPaintStruct):HDC;

Paramètres

Nom Description
Wnd Ce paramètre permet d'indiquer le numéro de la fenêtre devant être repeinte
Paint Ce paramètre permet d'indiquer la définition des points recevant la peinture selon le format de «Paint»

Description

Cette fonction permet de préparé les spécifications de la fenêtre pour la peindre et la remplir avec les informations de la structure spécifié.

Exemple

Voici un exemple d'une utilisation typique de cette fonction :

  1. Program BeginPaintSamples;
  2.  
  3. Uses WinProcs, WinTypes;
  4.  
  5. Const
  6.  CrtWindow: HWnd = 0;
  7.  
  8. Var
  9.  PS: TPaintStruct;
  10.  Message: TMsg;
  11.  
  12. Function CrtWinProc(Window: HWnd; Message, WParam: Word; LParam: LongInt): LongInt;Export;
  13. Var
  14.  I:Integer;
  15.  DC:HDC;
  16. Begin
  17.  CrtWinProc := 0;
  18.  CrtWindow := Window;
  19.  Case Message of
  20.   wm_Paint:Begin
  21.    DC := BeginPaint(Window, PS);
  22.     { Traitement de dessinage ici ... }
  23.    EndPaint(Window, PS);
  24.   End;
  25.   wm_Destroy: PostQuitMessage(0);
  26.   Else CrtWinProc := DefWindowProc(Window, Message, WParam, LParam);
  27.  End;
  28. End;
  29.  
  30. Const
  31.  CrtClass: TWndClass = (
  32.   style: cs_HRedraw + cs_VRedraw;
  33.   lpfnWndProc: @CrtWinProc;
  34.   cbClsExtra: 0;
  35.   cbWndExtra: 0;
  36.   hInstance: 0;
  37.   hIcon: 0;
  38.   hCursor: 0;
  39.   hbrBackground: 0;
  40.   lpszMenuName: NIL;
  41.   lpszClassName: 'TPWDraw'
  42. );
  43.  
  44. BEGIN
  45.  If HPrevInst = 0 Then Begin
  46.   CrtClass.hInstance := HInstance;
  47.   CrtClass.hIcon := LoadIcon(0, idi_Application);
  48.   CrtClass.hCursor := LoadCursor(0, idc_Arrow);
  49.   CrtClass.hbrBackground := color_Window + 1;
  50.   RegisterClass(CrtClass);
  51.  End;
  52.  CrtWindow := CreateWindow(
  53.   CrtClass.lpszClassName,
  54.   'BeginPaint Samples',
  55.   ws_OverlappedWindow + ws_HScroll + ws_VScroll,
  56.   cw_UseDefault, cw_UseDefault,
  57.   cw_UseDefault, cw_UseDefault,
  58.   0,0,
  59.   HInstance,
  60.   NIL
  61.  );
  62.  ShowWindow(CrtWindow, CmdShow);
  63.  UpdateWindow(CrtWindow);
  64.  While GetMessage(Message, 0, 0, 0) do Begin
  65.   TranslateMessage(Message);
  66.   DispatchMessage(Message);
  67.  End;
  68. END.

Voir également

Langage de programmation - Turbo Pascal pour Windows - Référence de procédures et fonctions - ENDPAINT
Langage de programmation - Turbo Pascal pour Windows - Référence de procédures et fonctions - INVALIDATERECT
Langage de programmation - Turbo Pascal pour Windows - Référence de procédures et fonctions - INVALIDATERGN
Langage de programmation - Turbo Pascal pour Windows - Référence de procédures et fonctions - VALIDATERECT
Langage de programmation - Turbo Pascal pour Windows - Référence de procédures et fonctions - VALIDATERGN
Langage de programmation - C pour Windows - BeginPaint
Langage de programmation - C pour OS/2 - Support de Windows 3.1 - BeginPaint


Dernière mise à jour : Dimanche, le 10 décembre 2017