티스토리 뷰
- 모달 대화상자
대화상자가 종료되기 전까지 부모 윈도우로 포커스 이동 안됨
int DialogBox(HINSTANCE hInst,
LPCWSTR 대화상자ID,
HWND 부모윈도우핸들,
DLGPROC 대화상사의 함수);
구조
1. DialogBox - 대화상자 화면 출력
2. EndDialog - 대화상자 종료
3. DialogProc - 대화상자 메시지 처리
대화상자에 있는 컨트롤(버튼 등의 자식윈도우)에서 이벤트 발생 시 다이얼로그에 WM_COMMAND 메시지와 함께 컨트롤ID는 LOWORD(wParam)에 저장되어 전달된다.
1
2
3
4
5
6
7
8
9
10
11
12
13 |
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_COMMAND:
{
int wmId = LOWORD(wParam);
// 메뉴 선택을 구문 분석합니다.
switch (wmId)
{
case ID_MODAL:
DialogBox(hInst, MAKEINTRESOURCE(IDD_DIALOG), hWnd, DialogProc);
break; |
cs |
DialogProc() 코드 아래 링크 참조
http://petra.tistory.com/admin/entry/post/?id=853