계층도 |
---|
CObject │ CCmdTarget │ CWnd |
CCmdTarget을 상속 받은 클래스들 중 가장 많이 사용하는 클래스
화면에 보이는 모든 윈도우들은 CWnd에서 상속받았으며, 윈도우의 최상위 클래스이다.
화면에 출력되는 모든 형태는 CWnd 클래스를 상속 받은 클래스로 만들어 졌다.
CWnd 기능 리스트
기능 | 내용 |
---|---|
Initialization | 윈도우를 만들고, 이것을 화면에 출력하고, 새로운 윈도우에 부모 윈도우 또는 자식 윈도우로 설정하고, 윈도우 스타일을 얻거나 받는 기능 |
Window State Functions | 현재 윈도우가 활성화인가 비활성화 인가, 현재 활성화 되어 있는 윈도우는 어떤것인가, 현재 윈도우가 마우스 이벤트를 캡쳐할 것인가, 그리고 현재 윈도우 스타일을 변경하는 것 등 윈도우 상태를 설정하는 기능 |
Window Size and Position | 윈도우 크기를 변경시키고 윈도우 위치를 바꾸는 기능 |
Window Access Functions | 현재 윈도우 다음에 연결되어 있는 윈도우는 어떤것인가, 부모 윈도우는 어떤 것인가 등등 윈도우에 접근을 하는 기능 |
Update/Painting Functions | 윈도우에 상자, 문자, 원, 도형, 비트맵등 그래픽 요소를 출력하는 기능 |
Coordinate Mapping Functions | 스크린 좌표와 윈도우 좌표의 변환등 매핑을 콘트롤하는 기능 |
Window Text Function | 윈도우에 문자를 출력할 경우 문자의 속성을 변경하는 기능 |
Scrolling Functions | 윈도우에 스크롤바를 두고 스크롤바에 의해서 스크롤 위치를 컨트롤 하는 기능 |
Drag-Drop Functions | 마우스를 드래그와 드롭을 했을 경우 실행하는 기능 |
Caret Functions | Caret이란, 키보드 문자를 입력할 때 사용하는 커서임. 이커서를 콘트롤 하는 기능 |
Dialog-Box Item Functions | 현재 윈도우에서 대화 상자 아이템이 설정 되어 있을 경우, 이 아이템들을 콘트롤 하는 기능 |
Menu Functions | 윈도우에 메뉴가 설정되었을 때 메뉴를 삽입, 수정, 삭제등을 하는 기능 |
ToolTip Functions | 풍선 도움말, 콘트롤 기능 |
Timer Functions | 타이머를 작동하고 타이머에 의해서 이벤트를 발생시키는 기능 |
Window Message Functions | 윈도우에 설정되는 메시지를 얻거나 보낼때 사용하는 기능 |
Clipboard Functions | 클립보드에서 데이터를 얻거나 전송할 때 사용하는 기능 |
OLE Controls | OLE를 사용할 수 있도록 콘트롤하는 기능 |
Message Handlers | 여러 메시지가 전달되었을 때 수행되는 해당 메시지 함수들 |
윈도우에서 구동되는 모든 기능이 CWnd에 포함되어 있다. 따라서 윈도우 안에 있는 특정 기능을 이용하자고 한다면 CWnd를 먼저 참조 하는 것이 좋다.
예) 툴바를 만들 때 사용하는 클래스 CToolBar. 이 툴바를 이동하려할 때 도움말에서는 CToolBar의 Class member를 찾아봤자 윈도우를 이동하는 함수는 나타나 있지 않다. 이럴 경우 CToolBar는 CWnd를 상속받았다는 것을 생각하고 CWnd의 맴버함수를 찾으면 된다.
참고 : Visual C++ Programming Bible Ver 6.x - 이상엽 저
CWnd
① 프레임 형태의 윈도우
CFrameWnd : SDI형 프로그램 제작시 사용되는 메인프레임 윈도우
CMDIFrameWnd : MDI형 프로그램 제작시 사용되는 메인프레임 윈도우
CMDIChildWnd : MDI형 프로그램 제작시 사용되는 자식프레임 윈도우
CSplitterWnd : 분할 윈도우 프로그램을 제작할 때 사용되는 프레임 윈도우
② 콘트롤 바
CControlBar : 콘트롤바 모체 윈도우
CToolBar : 툴바 형태를 출력하는 윈도우
CDialogBar : 대화 상자 형태의 도구바를 출력하는 윈도우
CStatusBar : 상태창을 만드는 윈도우
CReBar : 인터넷 익스플로러의 도구바 형태의 윈도우
③ 프로퍼티 시트
CPropertySheet : 프로퍼티 시트(카드철 형태) 윈도우
④ 대화상자
CDialog : 기본 형태의 대화상자
CCommonDialog : 공용 대화 상자
CFileDialog : 파일 대화 상자
CFindReplaceDialog : 찾기/바꾸기 대화 상자
CFontDialog : 폰트 대화상자
CColorDialog : 컬러 대화상자
CPrintDialog : 프린트 대화 상자
⑤ View 윈도우
CView : 일반적인 View 윈도우
CCtrlView : 콘트롤 View
CEditView : 에디터 View
CRicgEditView : 리치 에디터 View
CTreeView : 트리 View
CScrollView : 스크롤 View
CFormView : 대화 상자를 포함하는 View
CRecordView : OBDC를 사용할 때 레코드를 콘트롤하는 View
DaoRecordView : DAO 레코드 콘트롤 View
⑥ 콘트롤들
CAnimateCtrl : 에니메이터 콘트롤
CButton : 버튼 콘트롤
CComboBox : 콤보박스 콘트롤
CEdit : 에디터 콘트롤
CListBox : 리스트 상자
CListCtrl : 리스트 콘트롤
CProgressCtrl : 프로그래스바 콘트롤
CRichEditCtrl : 리치 에디터 콘트롤
CScrollBar : 스크롤바 컨트롤
CSliderCtrl : 슬라이더 콘트롤
CTreeCtrl : 트리 콘트롤
참고 : Visual C++ Programming Bible Ver 6.x - 이상엽 저
댓글