Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.27;
Скачать: CL | DM;

Вниз

Своё, что то типа DoubleBuffered   Найти похожие ветки 

 
Chlavik ©   (2003-10-16 19:14) [0]

Привет... Как мне как можно быстрее нарисовать окно на моём битмапе, а потом уже на самом окне? Пробовал как в исходнике Controls ( TwinControl.WMPaint) но у меня не получается, воопервых постоянно RangeCheck Error выскаивает при Perfom(wm_EareBackGround....) (DC выходит за пределы Integer)) интересно что мой исходник копия того.. Кто посоветует как сделать правильно?


 
clickmaker ©   (2003-10-16 19:24) [1]

Общая идея такова:

// Обработчик WM_PAINT

DC := BeginPaint(Handle, ps);
Bitmap := CreateCompatibleBitmap(DC, Width, Height);
MemDC := CreateCompatibleDC(DC);
OldBitmap := SelectObject(MemDC, Bitmap);
// рисуешь на MemDC

BitBlt(DC, Left, Top, Width, Height, Canvas.Handle, 0, 0, SRCCOPY);
SelectObject(MemDC, OldBitmap);
DeleteDC(MemDC);
DeleteObject(Bitmap);
EndPaint(Handle, ps);


 
clickmaker ©   (2003-10-16 19:25) [2]

Сорри,

BitBlt(DC, Left, Top, Width, Height, MemDC, 0, 0, SRCCOPY);



Страницы: 1 вся ветка

Текущий архив: 2003.10.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
1-89317
Андерсон
2003-10-17 11:09
2003.10.27
Нужно скрыть программу при Ctrl+Alt+Del и чтобы......


1-89318
Элина
2003-10-16 16:17
2003.10.27
Как загрузить иконку из DLL?


1-89272
abb
2003-10-14 12:56
2003.10.27
Совет нужен по компоненте для отображения дерева и wisywig реда..


6-89426
Pavel Oliynik
2003-09-01 15:59
2003.10.27
как показывать прогресс закачки почты в IdPOP3


14-89559
DenK_vrtz
2003-10-07 11:05
2003.10.27
Превращение exe-файла в проект Delphi