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

Вниз

Поверхность TPanel в Bmp файл!?   Найти похожие ветки 

 
SNV-Soft   (2004-08-22 13:02) [0]

Ув. знатоки, как у TPanel не имея канвас,
сохранить поверность TPanel в графический файл !?
Если не сложно киньте примерчик !?


 
}{enon ©   (2004-08-22 14:17) [1]

Можно скопировать изображение на что-нибудь, имеющее Canvas. Использую BitBlt, где источник - GetDC(Panel.Handle)


 
Mihey_temporary ©   (2004-08-22 14:56) [2]

В разделе Interface создаёшь класс:

type
 THackedPanel = class(TPanel);


Теперь сам код получения изображения с панели Panel1 типа TPanel:


var Bitmap: TBitmap;
begin
 Bitmap := TBitmap.Create;
 try
   Bitmap.Width := Panel1.Width;
   Bitmap.Height := Panel1.Height;
   Bitmap.Canvas.CopyRect(Rect(0, 0, Bitmap.Width-1, Bitmap.Height-1),
     THackedPanel(Panel1).Canvas, Rect(0, 0, Bitmap.Width-1, Bitmap.Height-1));
   Bitmap.SaveToFile("C:\pic1.bmp");
 finally
   Bitmap.Free;
 end;
end;


Сохраняет в том числе и изображения компонентов на панели.


 
SNV-Soft   (2004-08-23 12:09) [3]

Mihey_temporary ©   (22.08.04 14:56) [2]
Спасибо большое...
а можно спросить
почему если наследуешь от родителя у которого нет канвы..
в потомке она появляется !?


 
Думкин ©   (2004-08-23 12:17) [4]

>  [3] SNV-Soft   (23.08.04 12:09)

Видимо потому, что у родителя она таки есть. Только с другими правами.


 
Sapersky   (2004-08-25 13:08) [5]

Можно ещё Panel.PaintTo



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

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

Наверх




Память: 0.47 MB
Время: 0.026 c
14-1099383516
peypivo
2004-11-02 11:18
2004.11.21
Объявление процедуры внутри процедуры


4-1097303157
dms_main
2004-10-09 10:25
2004.11.21
Проверка Хэндла


1-1099454502
Тимур
2004-11-03 07:01
2004.11.21
Runtime error 216


6-1094823677
redlord
2004-09-10 17:41
2004.11.21
как изменить время отведенное на подключение сокету ?


8-1092367131
TextOut
2004-08-13 07:18
2004.11.21
Можно ли загрузить в MediaPlayer файл не с диска, а из памяти?