Q&A

  • TPanel 위의 것을 Clipboard로...
안녕 하세요...

TChart에 대해 공부를 하다가 Clipboard로 copy 하는 CopyToClipboardBitmap procedure를 발견하고 호기심이 생겼어요.

만약 Panel 위에 Chart, Edit, Button...들을 올려놓고
Panel을 통째로 Clipboard로 copy 해보려 하는데 방법을 잘 모르겠네요.
누구 아시는분 계시면 답변 부탁드립니다.

메리 크리스마스...^^y
1  COMMENTS
  • Profile
    최용일 2004.12.25 02:59
    안녕하세요. 최용일입니다.

    아래와 같이 해보세요...

    uses
        ......, ClipBrd;

    procedure TForm1.Button1Click(Sender: TObject);
    var
        DestRect, SrcRect: TRect;
        Bitmap: TBitmap;
        BitmapFormat: Word;
        BitmapData: THandle;
        BitmapPalette: HPalette;
    begin
        Bitmap := TBitmap.Create;
        try
            Bitmap.Width := Panel1.Width;
            Bitmap.Height := Panel1.Height;
            SrcRect := Panel1.BoundsRect;
            DestRect := Rect(0, 0, Panel1.Width, Panel1.Height);
            Bitmap.Canvas.CopyRect(DestRect, Canvas, SrcRect);
            Bitmap.SaveToClipboardFormat(BitmapFormat, BitmapData, BitmapPalette);
            ClipBoard.SetAsHandle(BitmapFormat, BitmapData);
        finally
            Bitmap.Free;
        end;
    end;

    그림판 열어서...붙여넣기로 테스트 해보세요...

    ^^ 항상 즐코하세요...

    • ㉳㉥ㅗ㉣ㅐ㉧ㅛ
      2004.12.30 19:35
      Win32에 TImageList 란 컴포넌트가 있지요... 걸 활용하면 됩니다.
    • 최용일
      2004.12.30 01:03
      안녕하세요. 최용일입니다. 컴포넌트패키지의 requires절에 designide.dcp를 추가해주세요. 델파이 L...
    • 초보의눈물
      2004.12.30 03:12
      designide는 이미 추가가 되어있습니다.-_-; 또 designide를 designide.dcp로 위 컴포넌트 패키지에 추...
    • 최용일
      2004.12.30 18:56
      안녕하세요. 최용일입니다. Proxies 유닛 문제는 이미 해결 방법이 나와 있어서 여기저기 몇번 검색만 ...
    • 오익환
      2004.12.29 17:59
      Acu Cobol이면 Vutil.exe를 사용하시면 됩니다.
    • 황유동
      2005.01.18 17:07
      감사합니다~ ^^
    • 기형종
      2004.12.30 01:11
      안녕하세요 문의하신 내용을 VB로 표현하면 아래와 같습니다. Selection.Font.Name = "돋움체" Select...
    • Jeeeeeeeeeep
      2004.12.30 03:40
      네..그걸 델파이로 바꾸면 되는거까진 알겠느데.. 델파이로 바꾼걸 좀 올려주시면 안될까요..;;; 부탁요^...
    • 기형종
      2004.12.31 02:48
      간단한 예제소스입니다. 먼저 폼위에 TWordApplication 컴포넌트를 떨구고 시작하십시요. procedure TF...
    • Jeeeeeeeeeep
      2004.12.31 05:18
      잘되는군요^^ 감사감사^^ 답변 고마워여 잘볼꼐요..^^ 다음번에도 모르는것 있으면 부탁해요^^ㅎ
    • 누룽지
    • 2004.12.28 20:50
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2004.12.29 00:05
      안녕하세요. 최용일입니다. 서브클래싱해보세요... type     TForm1 = class(T...
    • 누룽지
      2004.12.29 01:01
      귀찮으셨을텐데 소스까지 친절하게 올려주셔서 너무감사하네요 꾸벅 (_._) 남은 한 해 잘 마무리 하시구...
    • 일그니
      2004.12.28 23:30
      음. 질문을. 이해를. 잘.. 하지만.. 일단 객체의 움직임을 제어하고 싶다는..것으로 이해하겠습니다. ...
    • 공성환
      2004.12.28 20:46
      간단하게 uses절에 ShellAPI추가시키시고... ShellExecute(GetDesktopWindow, 'open', 'www.delphi.co.k...
    • 오병주
      2004.12.28 20:36
      이걸 이용하세요..^^ Function OpenInternetExplorer( sURL : string ): Boolean; const  &nbs...
    • 임우식
      2005.01.06 00:16
      ^^
    • 정원석
    • 2004.12.28 01:01
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 착한천사
      2004.12.31 23:54
      Client는 Oracle7용을 설치하고, setting도 oracle7 client에서 setting했던 것 처럼 사용하십시오.. 똑...
    • 이정택
    • 2004.12.27 20:13
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 오정훈
      2005.01.05 01:28
      ActiveX를 만드시려면 데이타 베이스 관련해서는 제약이 많습니다. 예전에 제가 만들었을 때에도 데이타 ...
    • 하얀까마귀
      2004.12.28 07:58
      안녕하세요 하얀까마귀 입니다. ActiveX 개발할때 조심해야될 부분이.. IE의 특성이 새창을 열때 새...
    • 초보델
    • 2004.12.27 18:48
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2004.12.28 01:45
      안녕하세요... MapVirtualKey() 함수를 사용하시면, 특정 키의 스캔코드값을 가지고 올 수 있습니다....
    • 황당한초보
      2004.12.27 19:14
      numlock on시 숫자패드 코드를 가지며, off시에는 방향키의 코드를 가집니다. 아래 코드를 참조하십시오....
    • 신철우
    • 2004.12.25 01:53
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2004.12.28 01:48
      아래 질문하신거에 대한 답변은 테스트 거치고 다시 올려드린건데.. 안해보셨나 보네요.. 다시 올려드...
    • 황당한초보
      2004.12.25 12:08
      sndPlaySound(FData, SND_MEMORY or SND_ASYNC or SND_LOOP); 이렇게쓰시지요 각각 인자는 아시겠지요? ^...
    • 권오현
    • 2004.12.24 22:35
    • 1 COMMENTS
    • /
    • 28 LIKES
    • 최용일
      2004.12.25 02:59
      안녕하세요. 최용일입니다. 아래와 같이 해보세요... uses     ......, ClipBr...
    • 신철우
    • 2004.12.24 19:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2004.12.24 21:09
      안녕하세요.. wav 파일의 연주를 특정 시간 만큼 반복재생키 위해 while 문을 사용하셨나요? 만일 ...
    • 김성현
    • 2004.12.24 00:45
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 석주현
      2004.12.24 02:06
      값을 형변환으로 스트링을 만들면 아무것도 없을때 '' 이 되던데요. ^^ 해보세요.
    • 김성현
      2004.12.24 02:33
      감사합니다 ^^;; 그런데 디비에서 값을 가져 오는거라 '' 와 널값은 다르다고 알고 있었는데 아닌가...
    • 석주현
      2004.12.24 08:03
      디비에서 값을 가지고 오지만 마지막 부분에 AsString 을 하기 때문에 그런거죠.. ^^
    • 김성현
      2004.12.26 23:41
    • 석주현
      2004.12.24 01:56
      작업 관리자를 띄우고 태스트 해보세요. 해보면 보통 동적으로 생성된 객체들은 그냥 메모리 잡아 먹고 ...
    • 김종균
      2004.12.24 02:30
      답변 감사드립니다. 같은 질문인데요... 폼이 닫히면 자동으로 반환이 안되나요? 안된다면, 동적으로 만...
    • 석주현
      2004.12.23 18:01
      TImage 말고 TPaintBox를 이용해서 작업하세요. 그리고 얼마나 복잡한 그림을 그리시는지는 모르지만 ...
    • 김종균
      2004.12.23 20:02
      답변감사합니다. 하다 하다 안되서... image를 두번 그려서 하고 있는데여 ^^;;; PaintBox로 해바야 겠네...
    • 하얀까마귀
      2004.12.28 07:52
      안녕하세요 하얀까마귀 입니다. TImage는 당연히 느립니다. ㅠㅠ 내부의 소스를 보시면 하는짓이 많...
    • nilriri™
      2005.07.10 06:28
      http://www.delphi.co.kr/zboard/zboard.php?id=delphiResource >그 미리보기에서 > >원하는 페이지를...
    • 이원희
    • 2004.12.23 04:44
    • 1 COMMENTS
    • /
    • 0 LIKES
    • ㉳㉥ㅗ㉣ㅐ㉧ㅛ
      2004.12.23 20:10
      강의실에서 contextmenu로 조회하시면 해당 내용이 나옵니다.
    • 이승호
    • 2004.12.23 02:59
    • 0 COMMENTS
    • /
    • 0 LIKES