C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[52585] Re:Re:CppWebBrowser 에서 IWebBrowser2 는?
장성호 [nasilso] 1417 읽음    2008-03-06 19:39
감사합니다.

매우 감사합나다.

ㅋㅋ

좋은하루 되세요...


civilian 님이 쓰신 글 :
: http://delphi.borlandforum.com/impboard/impboard.dll?action=read&db=del_tip&no=231
:
: 이거라도 함 참고해보세요.
:
: 장성호 님이 쓰신 글 :
: : WebBroswer 이미지를 그대로 TImage에 draw하려고 합니다.
: :
: : Delphi에서 TWebBroswer 나 TEmbeddedWB 로는 잘 되던데..
: : C++Builder에서 TCppWebBrowser로는 잘 안되네요
: :
: :
: :
: : //델파이 소스
: : procedure GenerateBitmapfromBrowser2(browser: iWebBrowser2; srcHeight: integer; srcWidth: integer; Image: TImage);
: : var
: :   sourceDrawRect : TRect;
: :   aViewObject   : IViewObject;
: : begin
: :   try
: :
: :       aViewObject := browser as IViewObject;
: :
: :       if aViewObject=nil then
: :         Exit;
: :
: :       Image.Picture.Bitmap.Width:=srcWidth;
: :       Image.Picture.Bitmap.Height:=srcHeight;
: :       sourceDrawRect := Rect(0, 0, srcWidth, srcHeight);
: :
: :       OleCheck(aViewObject.Draw(DVASPECT_CONTENT, 1, nil, nil,
: :                                Form1.Handle,
: :                                Image.Picture.Bitmap.Canvas.Handle,
: :                                @sourceDrawRect, nil, nil, 0));
: :
: :   except
: :     // error handler code
: :   end; { try }
: : end;
: :
: : procedure TForm1.CopyBroswerImage();
: : begin
: :
: :     GenerateBitmapfromBrowser2(EmbeddedWB1.ControlInterface,EmbeddedWB1.Height, EmbeddedWB1.Width,Image1);
: :     Image1.Repaint;
: :
: : end;
: : //----------------------------------------------------------
: : //C++Builder소스
: :
: : void __fastcall GenerateBitmapfromBrowser2(IWebBrowser2 *browser, int  srcHeight,int  srcWidth,TImage *Image)
: : {
: :
: :     IViewObject *ViewObject=(IViewObject *)browser;
: :     TRect rc=Rect(0,0,srcWidth, srcHeight);
: :
: :     if(ViewObject==NULL)return;
: :
: :     Image->Picture->Bitmap->Width=srcWidth;
: :     Image->Picture->Bitmap->Height=srcHeight;
: :     OleCheck(ViewObject->Draw(DVASPECT_CONTENT, 1, NULL, NULL, Form1->Handle, Image->Picture->Bitmap->Canvas->Handle,(const _RECTL *)&rc, NULL,NULL, 0));
: : }
: :
: :
: : void __fastcall TForm1::Button3Click(TObject *Sender)
: : {
: :     GenerateBitmapfromBrowser2(CppWebBrowser1->ControlInterface,CppWebBrowser1->Height, CppWebBrowser1->Width,Image1);
: :     Image1->Repaint();
: : }
: : //---------------------------------------------------------------------------
: :
: :
: : 두소스의 차이를 보면...
: :
: : EmbeddedWB나 TWebBroswer의   ControlInterface 는 IWebBrowser2  인데
: : TCppWebBrowser 의 ControlInterface 는 IWebBrowser2  가 아닌 IWebBrowser2 Disp 이네요
: :
: : COM에 대해서  잘 몰라서..
: :
: : TCppWebBrowser 에서는 IWebBrowser2  를 어떻게 가져오죠?

+ -

관련 글 리스트
52582 CppWebBrowser 에서 IWebBrowser2 는? 장성호 2608 2008/03/06
52586     Re:CppWebBrowser 에서 IWebBrowser2 는? 방태윤 2862 2008/03/07
52591         Re:Re:CppWebBrowser 에서 IWebBrowser2 는? 장성호 4155 2008/03/07
52602             감사합니다. 방태윤 1958 2008/03/07
52584     Re:CppWebBrowser 에서 IWebBrowser2 는? civilian 2350 2008/03/06
52585         Re:Re:CppWebBrowser 에서 IWebBrowser2 는? 장성호 1417 2008/03/06
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.