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

Вниз

Рисование без формы   Найти похожие ветки 

 
keymaster   (2002-07-27 02:34) [0]

Сейчас проблема решается так: берется форма, ставится
в Always on Top, а на ней я уже рисую, что мне нужно...
но так как форма заниает 1.5 Мб в памяти, то хочется
обойтись без неё.
Пробовал рисовать прям на рабочем столе, только всё равно
это дело закрывается любым другим окном и заново потом не отрисовывается....


 
Dmk   (2002-07-27 03:25) [1]

FormDC := GetDC(Form.Handle);

Этот метод вызывается внутри TWinControl


HiddenDC := BeginPaint(Form.Handle,TPaintStruct);
рисуем во внутренний DC формы т.е. HiddenDC
EndPaint(Form.Handle,TPaintStruct);


OnPaint
BitBlt(FormDC, 0, 0, ClientWidth, ClientHeight, 0, 0, HiddenDC, SrcCopy);

Внимание!
При любом изменении окна содержимое HiddenDC уничтожается,
как и сам DC. С каждым разом используется новый DC.
Поэтому этот метод надо вызывать заново.

Или еще проще делаешь свой DC, на него рисуешь, а потом
делаешь BitBlt на DC формы. Все остальные события родителя по отрисовке отключаешь.



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

Форум: "WinAPI";
Текущий архив: 2002.09.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.008 c
1-50786
pavit
2002-09-03 12:54
2002.09.16
Как определить что мышь ушла за пределы компонента


1-50746
vasya_dvc
2002-09-05 22:28
2002.09.16
Програмный фильтр низких частот


1-50811
mvg_first
2002-09-03 16:19
2002.09.16
Помогите отучить TVideoGrabber от наг-скрина!


1-50695
Valeris
2002-09-04 22:36
2002.09.16
Понять не могу, как добраться к Excel таблице


14-50974
Man-In-Red
2002-08-21 00:02
2002.09.16
Зачем в Delphi строить диаграммы?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский