본문 바로가기
IT-개발,DB

[개발/VC++] ATL Window Class 종류

by SB리치퍼슨 2016. 3. 21.

[개발/VC++] ATL Window Class 종류



ATL 은 COM을 지원하기 위해 디자인 되었지만 윈도우를 모델링 하는 클래스 영역도 포함한다고

한다. 그리고 ActiveX 같은 윈도우를 가지는 객체도 만들수 있다.

아래는 ATL 에서의 주요 윈도우 클래스들이다.

 

 CWindow - 윈도우를 조작하기 위한 Win32 APIs의 작은 랩퍼 클래스이다.

                    윈도우 핸들과 HWND 를 CWindow 로 변환하는 오퍼레이터를 포함한다.

                    그러므로 윈도우 핸들을 필요로하는 어떤 함수에 CWindow 오브젝트를

                    넘길수 있다.

 CWindowImpl - 이미 존재하는 윈도우를 서브클래싱 하거나 이미 존재하는 클래스를

                    수퍼클래싱 하거나 , 윈도우 베이스의 새로운 윈도우를 만들때

                    사용한다.
 CContainedWindow - 다른 클래스의 메세지 맵을 위한 메세지 경로를 구현한 윈도우

                    클래스이다. 이 클래스는 하나의 클래스에 메세지 처리를 집중하는 것을 허락한다.

 CAxWindow - 컨트롤을 만들거나 존재 하는 컨트롤에 붙임으로써 ActiveX control

                    호스트 윈도우 구현을 지원한다. 
 CDialogImpl - 모달이나 모달리스 다이얼로스를 구현한다. IDOK 나 IDCANCEL 같은

                    기본 메세지 경로를 지원한다.
 CSimpleDialog - 단순 모달 다이얼로그를 주어진 리소스 ID로 구현한다. IDOK나 IDCANCEL과

                    같은 기본 메세지 맵을 기지고 있다.
CAxDialogImpl - CDialogImpl 과 같이 모달과 모달리스를 를 구현하는 베이스 클래스로 사용되

                    며 상속된 클래스에 기본 메세지 맵을 제공한다.
                    추가로 ActiveX 컨트롤을 지원한다. ATL 오브젝트 위저드에서 CAxDialogImpl에

                    상속된 클래스를 프로젝트에 넣은 것을 지원한다.

CWndClassInfo -  새로운 윈도우 클래스의 정보를 보관한다.

                    특별히 WNDCLASSEX를 캡슐화한다.

CWndTraits and CWinTraitsOR - ATL 윈도우 오브젝트의 스타일을 캡슐화한다





반응형

댓글