TCppWebBrowser 동적생성에 관한 질문은 조금 이쁘게 UI를 꾸미려하시는 분들이 자주 물어옵니다.
우선 동적 생성에 방법을 설명드린후 사용시 주의점등을 알려드리죠
아래 코드를 쓰기전에 TCppWebBrowser 컴포넌트를 해당 폼에 올렸다가 컴파일 한번하신 후
지워주셔야합니다.
그래야만 TCppWebBrowser 를 쓸수 있는 것들이 올라오기때문입니다.
cpp 화일에는
#pragma link "SHDocVw_OCX"
해더화일에는
#include <ExtCtrls.hpp>
#include "SHDocVw_OCX.h"
#include <OleCtrls.hpp>
물론 위 코드를 직접 넣으셔도 관계없습니다.
TCppWebBrowser *CppWebBrowser1 = new TCppWebBrowser(this);
CppWebBrowser1->ParentWindow = this->Handle;
CppWebBrowser1->Show();
위 코드까지입니다.
패널에 올릴경우에는 this로 쓰인것들이 Panel1 로 바꾸시면 됩니다.
이렇게 동적생성하시면 Align 이란 프로퍼티를 조정하기가 힘들어집니다.
폼의 Width와 Height를 CppWebBrowser1 에 적용하시던지 하여야하는데
CppWebBrowser1 가 올라간 Parent의 크기가 변경되어도 CppWebBrowser1 의 크기는 변경되지않습니다.
해당 Parent의 OnResize 이벤트에 CppWebBrowser1 의 크기를 변경하는 코드를 넣어주시면되구요
ex) CppWebBrowser1->Width = Panel1->Width - 3; <- 이런식으로
꼭 동적 생성을 하셔야될 이유가 없으시다면
CppWebBrowser1->Hide(); 하셔서 숨겨놓으시다가 필요할경우에만 Show() 하는 방법을 택하시는것도
좋은 방법일겁니다.
화이팅~
|