STUDY/C++ & MFC
[MFC] CMainFrame* pMain = (CMainFrame*)AfxGetMainWnd();
쑥말고인절미
2024. 8. 11. 00:41
간단 설명
- MFC에서 메인 윈도우(CMainFrame 클래스)를 가져와서 pMain이라는 포인터에 저장하는 코드
- MFC 애플리케이션에서 메인 프레임 윈도우에 대한 포인터를 얻고, 이를 통해 메인 프레임 윈도우의 기능이나 상태를 제어하기 위해 사용된다.
- MFC 애플리케이션에서 메인 윈도우에 접근하고자 할 때 매우 유용한 패턴이다.
CMainFrame* pMain = (CMainFrame*)AfxGetMainWnd();
각 구문의 의미
- AfxGetMainWnd()
- 해당 함수는 현재 애플리케이션의 메인 윈도우에 대한 포인터를 반환한다.
- 이 함수는 MFC의 CWnd* 타입의 포인터를 반환하며, MFC 애플리케이션에서 메인 윈도우를 참조하는 데 자주 사용한다.
- CMainFrame*
- MFC 애플리케이션에서 메인 프레임 윈도우를 나타내는 클래스
- 메인 프레인 윈도우는 일반적으로 메뉴, 툴바, 상태 표시줄 등을 포함하는 창이다.
- MFC의 표준 애플리케이션에서는 CMainFrame 클래스가 CFrameWnd 클래스를 상속받아 구현된다.
- (CMainFrame*)AfxGetMainWnd()
- AfxGetMainWnd() 함수는 CWnd* 타입의 포인터를 반환하므로, 이 포인터를 CMainFrame* 타입으로 형변환하여 CMainFrame 클래스의 멤버 함수나 속성에 접근할 수 있도록 한다.
- CMainFrame* pMain;
- pMain은 CMainFrame* 타입의 포인터 변수
- 메인 프레임 윈도우를 가리킨다.
- 이 포인터를 통해 메인 프레임 윈도우의 멤버 함수에 접근할 수 있다.