Показать сообщение отдельно
  #1  
Старый 28.09.2009, 13:45
ComputerMonster ComputerMonster вне форума
Заблокирован
 
Регистрация: 28.09.2009
Сообщения: 6
Репутация: 10
Печаль Найдите ошибку

Двойная буферизация

Как устранить мерцание элементов управление при изменении размеров окна?

Я пытаюсь сделать вот так, но не получается...

Код:
  begin
    DC := GetDC(0);
    MemBitmap := CreateCompatibleBitmap(DC, ClientRect.Right, ClientRect.Bottom);
    ReleaseDC(0, DC);
    MemDC := CreateCompatibleDC(0);
    OldBitmap := SelectObject(MemDC, MemBitmap);
    try
      DC := BeginPaint(Handle, PS);
      Perform(WM_ERASEBKGND, MemDC, MemDC);
      Message.DC := MemDC;
      WMPaint(Message);
      Message.DC := 0;
      BitBlt(DC, 0, 0, ClientRect.Right, ClientRect.Bottom, MemDC, 0, 0, SRCCOPY);
      EndPaint(Handle, PS);
    finally
      SelectObject(MemDC, OldBitmap);
      DeleteDC(MemDC);
      DeleteObject(MemBitmap);
    end;
  end;

Где ошибка?!?!?!?
Ответить с цитированием