마우스 커서를 바꾸어주는 메시지 핸들러 함수 의 코드 내용
BOOL CPaintView::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
HCURSOR hCursor ;
switch(m_nDogu)//클릭된 도구에 따라 커서의 모양을 바꾸어 지정함.
{
case DPEN :
hCursor = AfxGetApp()->LoadCursor(IDC_PEN) ;
break ;
case DLINE :
hCursor = AfxGetApp()->LoadCursor(IDC_CROSS) ;
break ;
case DELLIPSE :
hCursor = AfxGetApp()->LoadCursor(IDC_CROSS) ;
break ;
case DRECT :
hCursor = AfxGetApp()->LoadCursor(IDC_CROSS) ;
break ;
case DROUNDRECT :
hCursor = AfxGetApp()->LoadCursor(IDC_CROSS) ;
break ;
case DFILL :
hCursor = AfxGetApp()->LoadCursor(IDC_FILL) ;
break ;
case DERASE :
return CView::OnSetCursor(pWnd, nHitTest, message) ;
break ;
}
SetCursor(hCursor) ;
return TRUE ;
}순서대로 설명하면
hCursor 라는 커서 변수?[구조체?] 를 생성하고
각 케이스에 따라 미리 정의해둔 사용자 정의의 커서명을 로드해서 해당 커서 변수에 집어넣어줌.
마지막으로 변수를 현재 커서에 셋팅해주고 리턴.
AfxGetApp()->LoadCursor(IDC_FILL) ;
에서 IDC_FILL 은 사용자가 해당 프로그램의 res폴더 내에 이미지를 넣고 커서 이름도 정해줘야 오류가 발생하지 않는다.
//////////////////////////////////////////////////////////
CObject::Serialize
MFC의 직렬화(Serialize)를 사용해, 오브젝트를 파일에 쓰고 읽는 방법
당연한 말이지만 앞의 CObject는 명사 가 아니고 문법 이다.
본 게시글이 아닌 전에 올려둔 소스의 내용으로는
새 파일 작성이나 불러오기 등이 아예 작동을 하지 않는다.[저장은 되는데..]
그런고로 다른 잘된 소스파일을 올려두는 것.
아아 저작권 법! 저작권!
은 출처 기재하면 됨 ㅎㅎ. 돈받고 파는것도 아니고..
근데 역추적해서 이거 출처 찾으려다 fail함.
엌.
여튼 업로드.
CObject::Serialize 관련 참조 글 : http://urassa.tistory.com/184
본 글은 http://jolgame.tistory.com/216 에 있는 소스를 따라하면서
처음보거나 써두어야 할 만한 것을 적은 글이다.
'공부 > MFC' 카테고리의 다른 글
Visual C++ 2008 MFC Chapter 18 깜박임 방지 (0) | 2011.12.14 |
---|---|
그림판 만들기 주석첨부 따라하기 클리어 (0) | 2011.12.12 |
커서 제작. 핫 스폿 (0) | 2011.12.09 |
Visual C++ 2008 MFC Chapter 10 메뉴~ - 4 (0) | 2011.12.08 |
Visual C++ 2008 MFC Chapter 10 메뉴~ -3 (0) | 2011.12.08 |