MFC 를 사용하면서 이벤트를 등록하는 방법

(보통 View 클래스에 등록을 많이 하므로 기준을 View클래스에 두고 설명 한다.)

 

1.View클래스 헤더 파일에 #define WM_<이름> (WM_USER+숫자)

   이렇게 정의한다.

 


#define WM_SUN (WM_USER+2)

 

2. 헤더 상단 하단 부분의 DECLARE_MESSAGE_MAP 에 SendMessage가 호출하게 되는 afx_msg 함수를 정의한다.

 

protected:

//Generated message map functions

//{{AFX_MSG(CProgressBar_TWO)

 

   afx_msg LRESULT TestSUN(WPARAM,LPARAM);

//}}AFX_MSG

DECLARE_MESSAGE_MAP()

 

3.클래스의 cpp파일로 와서 상단의 BEGIN_MESSAGE_MAP에 함수와 이벤트를

연결한다.

 

BEGIN_MESSAGE_MAP(...,...)

//{AFX_MSG_MAP(...)

 

   ON_MESSAGE(WM_SUN,TestSUN)

 

//}AFX_MSG_MAP

END_MESSAGE_MAP()

 

4.함수를 정의한다.

 

LRESULT xxxView::TestSUN(WPARAM,LPARAM)

{

.....

}

 

위와 같은 방법으로 메세지를 추가하고 이벤트로 사용할 수 있다.

출처 : http://blog.naver.com/swblaster?Redirect=Log&logNo=80026741771
Posted by pkss
,