[MFC] CWebBrowser2
Dialog나 View에 webpage를 띄울수 있는 Controller이다. 정확한 용도나 사용법은 모르나, 후배가 면접을 위해 과제를 하는데 나도 처음 만져보고 접혔던 Class이다. 다른 것과는 달리 매우 사용법이 쉬워서 자주 사용할듯하다.
서론이 길면 안좋다. 바로 사용법이다.
2. 클래스 추가하기
일단 이렇게 클래스추가후 AxtiveX 컨트롤의 MFC 클래스를 선택한다
Microsoft Web Browser <1.0>을 선택한후
Interface는 WebBowser2를 고른다. 그냥 WebBrowser와는 무슨 차이인지는 모르겠다.
이렇게 되면 해당 클래스의 생성은 완료다.
위처럼 하면 해당하는 Header file과 cpp 파일이 생성이 된다.
해당 header file을 Include한 후 변수를 선언하자.
1.
#include "CWebBrowser2.h"
2.
//...................
3.
/....................
4.
CWebBrowser2 m_Page_Viewer;
5.
/.................
4. 초기화
해당 header file을 Include한 후 변수를 선언하자.
난 Dialog에 띄워야 했기 때문에 OnInitDialog를 재정의 하여서 해당 부분을 넣었지만. View의 경우는
OnCreate함수를 재정의 하면 되는 것 같다.
01.
BOOL
CDlg_WebViewer::OnInitDialog()
02.
{
03.
CDialog::OnInitDialog();
04.
CRect rectCurrent;
05.
//View가 들어갈 Rect 수정도 용이하다.
06.
GetClientRect(rectCurrent);
07.
rectCurrent.right-=45;
08.
if
(m_Page_Viewer.Create(
"Web Control"
, WS_CHILD | WS_VISIBLE, rectCurrent,
this
, 1010) == FALSE)
09.
{
10.
AfxMessageBox(
"웹브라우저컨트롤생성실패\n"
);
11.
return
FALSE;
12.
//정확한 Return값을 잘 모르겠다.
13.
}
14.
// TODO: 여기에추가초기화작업을추가합니다.
15.
return
TRUE;
// return TRUE unless you set the focus to a control
16.
// 예외: OCX 속성페이지는FALSE를반환해야합니다.
17.
}
5. Run
많이 쉽다. CString에 path를 저장한후에 Navigate라는 함수를 실행하면
이쁘게 뜬다.
1.
void
CDlg_WebViewer::OnBnClickedConnect()
2.
{
3.
//TODO: 여기에컨트롤알림처리기코드를추가합니다.
4.
5.
CString sFilePath;
6.
sFilePath.Format(
"http://hantor.net"
);
7.
m_Page_Viewer.Navigate(sFilePath, NULL, NULL, NULL, NULL);
8.
}
<완성 사진>
'개발지식창고 > MFC' 카테고리의 다른 글
MDI 구조 (0) | 2012.04.05 |
---|---|
MFC에서 콘솔창 띄워기 (디버그용도) (0) | 2012.02.05 |
VS2005 -> VS2008 변환시 주의할점 (0) | 2011.07.22 |
CCmdUI 클래스 : 사용자 인터페이스 갱신 (0) | 2011.07.19 |
ON_COMMAND 와 ON_MESSAGE 의 차이점 (0) | 2011.07.19 |