Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
14-28248
LongIsland
2002-11-18 11:31
2002.12.09
Free Pascal


1-28009
Hammer1
2002-11-27 12:38
2002.12.09
DOS & Windows


1-28103
d_v_i
2002-11-28 13:39
2002.12.09
Будте добры! Как разложить BMP на пиксели с соответ-ем цветом


14-28202
dinAlt
2002-11-16 12:33
2002.12.09
Открылся новый сайт!!!


14-28289
Aristarh
2002-11-19 11:59
2002.12.09
Прошу высказаться об уровне шума HDD Western Digital




   Наверх