Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.27;
Скачать: [xml.tar.bz2];

Вниз

Своё, что то типа 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.018 c
3-89175
Дмитрий К.
2003-10-06 14:46
2003.10.27
Привилегии в системе


4-89653
YuraR
2003-08-19 15:02
2003.10.27
Как получить хэндл child-окна в котором нажата кнопка?


1-89328
Элина
2003-10-17 10:48
2003.10.27
ВОПРОС


1-89334
Brutus
2003-10-16 14:14
2003.10.27
Как запустить программу


14-89578
isko
2003-10-07 14:12
2003.10.27
часто бывает





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский