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

Вниз

сохранение содержимого canvas в файл   Найти похожие ветки 

 
robbit   (2002-08-19 18:03) [0]

Делаю так:

procedure TMyControl.SaveToBmp(FileName: String);
var
BitMap: TBitMap;
begin
BitMap := TBitMap.Create;
try
BitMap.Width := Self.Width;
BitMap.Height := Self.Height;
BitBlt(BitMap.Canvas.Handle, 0, 0, Width, Height, Self.Canvas.Handle, 0, 0, SRCCOPY);
BitMap.SaveToFile(FileName);
finally
BitMap.Free;
end;
end;


Все пока путем, но в кадр случайно попадает окошко, которое AlwaysOnTop, ну Лингво, например, и значит тоже сохраняется. Вопрос: где я не прав и может есть другой способ попроще?


 
BOA_KAA ©   (2002-08-20 18:11) [1]

Поправыь меня, если я не прав:
Ты хочешь создать свой класс TMyControl, у которого есть метод сохранения в файл SaveToBmp (возможно торможу, но я болен немножко:-)). Если так, то что это за класс такой TMyControl и с чем его едять? А точнее, что у него за поле Self?


 
robbit   (2002-08-22 11:44) [2]

2BOA_KAA

TMyControl - класс наследник TWinControl. Self он и есть Self. Его можно опустить. Остался от каких-то экспериментов.

Вообще-то решение я уже нашел. Прошло затмение от перенедотруда.


procedure TMyControl.SaveToFile(FileName: String);
var
BitMap: TBitMap;
begin
BitMap := TBitMap.Create;
try
BitMap.Width := Width;
BitMap.Height := Height;
PaintTo(BitMap.Canvas, 0, 0);
BitMap.SaveToFile(FileName);
finally
BitMap.Free;
end;
end;





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

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

Наверх




Память: 0.47 MB
Время: 0.034 c
14-28206
Праведник
2002-11-15 22:34
2002.12.09
Звук в Делфи


3-27832
UniDeMoN
2002-11-17 04:33
2002.12.09
создание собственной базы данных


14-28223
Shadow
2002-11-16 20:44
2002.12.09
Способы подавления депрессии?


4-28365
Nomad.kz
2002-10-23 14:58
2002.12.09
определить размер файла


3-27822
Tundra
2002-11-18 14:11
2002.12.09
Как в ADO связать данные из различных баз даных