안녕하세요 여러분. 크리에이트메이커 입니다.
오늘 글은 MFC관련해서 인데요.
MFC는 엄청 오래된 구식 UI C++툴이죠.
그래서 비교적 다른 UI툴들에 비해 사용방법이 조금 복잡하고 까다롭습니다.
MFC작업을 하면 당연히 실시간 이벤트 함수가 필요할 수박에 없죠.
예를들어
OnVScroll 이런것요.
하지만 가끔 저런것을 쓸때,
클래스 마법사를 통하여 함수를 선언하는데요.
이때 주의해야 할 사항이 있습니다.
생각없이 막 추가하다보면
void CAboutDlg::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
이렇게 기본 다이얼로그인 About 다이얼로그에 선언 될 때가 있거든요.
정상적이라면
void C내꺼Dlg::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
이렇게 선언돼야 하죠.
하지만 저렇게 about 으로 선언이 되면, 이벤트 핸들러가 about 클래스에 선언이 되버려서,
우리가 사용하는 다이얼로그에서 이벤트가 발생하지 않게 됩니다.
BEGIN_MESSAGE_MAP(CAboutDlg, CDialogEx)
ON_WM_VSCROLL()
END_MESSAGE_MAP()
여기에 선언이 되버리죠.
우리의 다이얼로그에서 이벤트를 발생시키기 위해서는
BEGIN_MESSAGE_MAP(CROVDlg, C내꺼Ex)
ON_WM_VSCROLL()
END_MESSAGE_MAP()
여기에 선언되야 합니다.
둘이 차이점이 보이시나요?
이점 주의하시고 클래스 추가하시길 바랍니다~
그럼 이만.
'IT기술(코딩) > C, C++' 카테고리의 다른 글
mfc 배경 깜박임 아주 쉽게 없에는법, remove backgound blink and cover button (0) | 2024.05.03 |
---|---|
window socket 10060 error 윈도우 소켓 타임아웃 에러. (0) | 2024.02.14 |
C++ smtp socket connection error 소켓 커넥션 에러 관찰 WSAStartup inet_addr 메일보내기 (0) | 2022.08.14 |
C# design Form 에서 ZMQ 통신 하기 Client (0) | 2022.06.16 |
C++ MFC 10진법, 16진법 변환 (0) | 2022.05.23 |