ATL에서 Composite Control 등을 기반으로 콘트롤을 추가하여 사용하고자 할 때,
아래와 같이 사용하면 MFC 콘트롤을 다루는 것과 같은 방식으로 이용할 수 있다.
:: .h 파일
#include "atlcontrols.h"
using namespace ATLControls;
class ATL_NO_VTABLE CTestControl :
{
...
// 멤버변수 추가
// using namespace 를 선언하고 사용함에도 ambiguous 오류인해 다시 스코프를 지정
CContainedWindowT m_ctrlListFiles;
CContainedWindowT m_ctrlBtDelete;
CContainedWindowT m_ctrlBtUpload;
CContainedWindowT m_ctrlPreview;
...
}
:: .cpp 파일
void CTestControl::InitControls()
{
// 콘트롤 변수에 오브젝트 바인딩
m_ctrlListFiles.Attach(GetDlgItem(IDC_LIST_FILES));
m_ctrlBtDelete.Attach(GetDlgItem(IDC_BUTTON_DELETE));
m_ctrlBtUpload.Attach(GetDlgItem(IDC_BUTTON_UPLOAD));
m_ctrlPreview.Attach(GetDlgItem(IDC_PREVIEW));
}
atlcontrols.h 는 Visual Studio 2008이 설치된 디렉토리에 샘플소스안에 포함되어 있다.