Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

копирование изображения формы [D7]


3asys ©   (2012-01-20 13:38:00) 

Как можно скопировать изображение формы (и всего что на ней расположено и нарисовано) наподобие процедуры GetFormImage в случае, когда на форме расположен TOLEContainer и поверх него есть рисунок (в этом случае  GetFormImage дает пустой Bitmap). Как это лучше сделать?


Save2Bmp   (2012-01-20 15:15:00) [1]

делай CaptureScreen, типа
procedure TForm2.CaptureScreen(s: string);
var
bmp: TBitmap;
DC: HDC;
begin
bmp:=TBitmap.Create;
bmp.Height:=Screen.Height;
bmp.Width:=Screen.Width;
DC:=GetDC(0);  
BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height, DC, 0, 0, SRCCOPY);
bmp.SaveToFile(s + '.bmp');
ReleaseDC(0, DC);
end;


или вместо Screen.Width, Screen.Height область, которую хочешь скопировать
В данном примере область сохраняется в S.bmp


Плохиш   (2012-01-20 14:53:00) [2]

Из справки:
Die Methode GetFormImage gibt ein Bitmap des Formulars zurück.


3asys   (2012-01-20 14:15:00) [3]


> oldman ©

да, это разумеется, но имелось в виду, что может быть есть функция позволяющая получить bitmap не используя clipboard. Что-то наподобие CopyRect например...


oldman   (2012-01-20 14:11:00) [4]

Alt+PrintScreen?


Наверх

Титульная страница Поиск, карта сайта Написать письмо