프로그래밍/Etc

[Delphi]차트이미지 클립보드에 복사 후 붙여넣기

가라멜 2018. 4. 27. 11:39
반응형

통계 페이지 관련해서 차트를 활용하는데,
다른 유닛에서도 통계된 데이터가 적용된 차트를 그대로 사용하려니
뭔가 복잡해서.. 통계 페이지에서 적용된 차트를 이미지만 떠서 다른 유닛에서 사용하려고 찾아보았다.


찾아보니 TChart를 클립보드에 복사한 뒤 붙여넣기가 가능하단다.


사용법은 의외로 간단.


1. 먼저, 차트이미지 복사하기

procedure TfrmReport.Button1Click(Sender: TObject); begin Chart.BufferedDisplay := False; Chart.CopyToClipboardBitmap; Chart.BufferedDisplay := true; end;


이 함수를 실행 한 뒤 그림판에서 Ctrl + V 를 누르면

차트 이미지가 붙여넣기 되는 것을 확인 할 수 있다.

2. 그다음은 다른 유닛에서 붙여넣기


procedure TfrmQReport.setData; var bmp : TBitmap; begin qrlblSelectd.Caption := _strSelect; if Clipboard.hasformat(CF_PICTURE) then begin try bmp := TBitmap.Create; bmp.Assign(Clipboard); imgChart.Picture.Bitmap.Assign(bmp); finally bmp.Free; end; end; end;

덧, 만약 Interface 부분 uses 절에 Clipbrd가 없다면 추가해준다.


참고한 사이트