![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
сохранение содержимого canvas в файл
robbit © (2002-08-19 18:03:00)Делаю так:
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, ну Лингво, например, и значит тоже сохраняется. Вопрос: где я не прав и может есть другой способ попроще?
robbit (2002-08-22 11:44:00) [1]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;
BOA_KAA (2002-08-20 18:11:00) [2]Поправыь меня, если я не прав:
Ты хочешь создать свой класс TMyControl, у которого есть метод сохранения в файл SaveToBmp (возможно торможу, но я болен немножко:-)). Если так, то что это за класс такой TMyControl и с чем его едять? А точнее, что у него за поле Self?