Quick report에 QRimage를 넣는 부분인데요 제가 초보라서요 소스가 이해가 잘안가는 관계로 설명 좀 부탁드려요..
알아듣기 쉽게요..
procedure TF_BW143R.DetailBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
var
ImageName1: string;
BW_bmp : TBitmap;
jpg : TJPEGImage;
begin
ImageName1 := BongWooRoot + '자재' + Q_BW143R.FieldByName('자재코드').Asstring
+ Q_BW143R.FieldByName('창고코드').Asstring + '.jpg';
if FileExists(ImageName1) then
begin
jpg := TJpegImage.Create;
jpg.LoadFromFile(ImageName1);
BW_bmp := TBitmap.Create;
BW_bmp.Assign(jpg);
QRImage1.Picture.Bitmap.Assign(BW_bmp);
jpg.Free;
BW_bmp.Free;
end
else
begin
QRImage1.Picture := nil;
QRImage1.Height := 0;
end;
도움이 되었으면 하네요.
진 wrote:
> Quick report에 QRimage를 넣는 부분인데요 제가 초보라서요 소스가 이해가 잘안가는 관계로 설명 좀 부탁드려요..
> 알아듣기 쉽게요..
>
> procedure TF_BW143R.DetailBand1BeforePrint(Sender: TQRCustomBand;
> var PrintBand: Boolean);
> var
> ImageName1: string; //이미지가 저장된 디렉토리와 파일명을 저장하는 변수
> BW_bmp : TBitmap; //비트맵 객체
> jpg : TJPEGImage; //Jpeg 객체
> begin
//변수에 디렉토리와 파일명을 저장한다. 아마도
//BongWooRoot는 드라이브명이 저장되어 있을 것이고
//자재는 이미지가 저장된 디렉토리를 지칭할 겁니다. 마지막으로
//Q_BW143R은 쿼리의 이름이 될 겁니다. 이 쿼리에서
//자재코드+창고코드라는 필드를 읽어오는 거죠.
//어찌됐든 ImageName1이라는 변수에 그림파일의 위치를 저장하는 과정입니다.
> ImageName1 := BongWooRoot + '자재' + Q_BW143R.FieldByName('자재코드').Asstring
> + Q_BW143R.FieldByName('창고코드').Asstring + '.jpg';
> if FileExists(ImageName1) then //이미지 파일이 존재한다면
> begin
> jpg := TJpegImage.Create; //Jpeg객체 생성
> jpg.LoadFromFile(ImageName1); //Jpeg객체에 이미지를 불러옴
>
> BW_bmp := TBitmap.Create; //비트맵 객체 생성
> BW_bmp.Assign(jpg); //비트맵 객체에 Jpeg객체를 할당
>
> QRImage1.Picture.Bitmap.Assign(BW_bmp); //QRImage에 비트맵 객체를 할당
>
> jpg.Free; //Jpeg객체 소멸
> BW_bmp.Free; //비트맵 객체 소멸
> end
> else //이미지 파일이 존재하지 않는다면 아래 라인을 처리
> begin
> QRImage1.Picture := nil;
> QRImage1.Height := 0;
>
> end;
>