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

Вниз

снимок TPanel   Найти похожие ветки 

 
TPel   (2007-08-23 13:31) [0]

в bmp , это компонент TPanelText = class(TPanel)
как ?


 
wp2 ©   (2007-08-23 13:53) [1]

ты хочешь рисунок панели сохранить в файл?


 
DrPass ©   (2007-08-23 13:57) [2]

Посмотри реализацию метода Print у формы. Принцип тот же самый


 
TPel   (2007-08-23 22:14) [3]

в коде засовывается по указателю, а как выдрать из памяти
аналог Save ? в исходнике происходит печать без буферов

var
 FormImage: TBitmap;
 Info: PBitmapInfo;
 InfoSize: DWORD;
 Image: Pointer;
 ImageSize: DWORD;
 Bits: HBITMAP;
 DIBWidth, DIBHeight: Longint;
 PrintWidth, PrintHeight: Longint;
begin
FormImage := GetFormImage;
Bits := FormImage.Handle;
GetDIBSizes(Bits, InfoSize, ImageSize);
Info := AllocMem(InfoSize);
Image := AllocMem(ImageSize);
GetDIB(Bits, 0, Info^, Image^);
           with Info^.bmiHeader do
           begin
             DIBWidth := biWidth;
             DIBHeight := biHeight;
           end;

....
FormImage.Free;

end;


 
DrPass ©   (2007-08-23 22:23) [4]


> TPel   (23.08.07 22:14) [3]

...а внутрь GetFormImage заглядывал?


 
TPel   (2007-08-23 22:40) [5]

увидел , с форма нормально, а панель не снимает
принудительно передаю обьект

function TForm1.GetFormImageEx(P:TPanel): TBitmap;
var
 Ofs: Integer;
begin
 Result := TBitmap.Create;
 try
   Result.Width := P.ClientWidth;
   Result.Height := P.ClientHeight;
   Result.Canvas.Brush := P.Brush;
   Result.Canvas.FillRect(P.ClientRect);
   Result.Canvas.Lock;
   try
     if GetWindowLong(Handle, GWL_STYLE) and WS_BORDER <> 0 then
       Ofs := -1  // Don"t draw form border
     else
       Ofs := 0;  // There is no border
     PaintTo(Result.Canvas.Handle, Ofs, Ofs);
   finally
     Result.Canvas.Unlock;
     Result.SaveToFile("c:\11.bmp");
   end;
 except
   Result.Free;
   raise;
 end;
end;


 
TPel   (2007-08-24 09:45) [6]

кокретно код выдает bmp 185х41 того же цвета,но без надписи
сама форма 544х375, панель 185х41
а надписи на панели нет PANEL.Caption:="TEST GRAPH";

хотя при снятии все формы она снимается
FormImage := GetFormImage;


 
TPel   (2007-08-24 09:47) [7]

отбой неподписанный Handle был от формы



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

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

Наверх




Память: 0.45 MB
Время: 0.053 c
15-1187185908
@!!ex
2007-08-15 17:51
2007.09.16
Причина алкоголизма.


2-1188065215
hprx
2007-08-25 22:06
2007.09.16
Работа с графикой.


3-1179497379
mixa666
2007-05-18 18:09
2007.09.16
DBGrid


2-1187683458
Alex_AA
2007-08-21 12:04
2007.09.16
Как вставить картинку в ячейку таблицы?


2-1187609600
Кирей
2007-08-20 15:33
2007.09.16
ошибка при перекодировке CharToOem





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский