본문 바로가기
::public/윈도우즈 응용 프로그래밍

MessageBox

by 해맑은욱 2019. 9. 24.
MessageBoxExW(
    _In_opt_ HWND hWnd,            // 박스를 소유할 윈도우 핸들
    _In_opt_ LPCWSTR lpText,    // 메시지 창의 내용    
    _In_opt_ LPCWSTR lpCaption,    // 메시지 창의 제목
    _In_ UINT uType,            // 내용에 출력될 아이콘이나 버튼
    _In_ WORD wLanguageId
);
 
MessageBox(hWnd, L"메시지 박스 입니다.", L"한글로 된 메시지 박스 입니다.", MB_ICONQUESTION | MB_OK);
cs

*윈도우 종료 버튼을 누를시 활용.

;'X 버튼'을 누르면 WM_CLOSE 메시지가 전송되는데 상황에 따라 처리를 다르게 하는게 좋다.

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    HDC h_screen_dc = ::GetDC(NULL);    // 모니터 전체 화면용 DC
    HDC h_dc = ::GetDC(hWnd);            // 현재 윈도우용 DC
    int check;
    switch (message)
    {
    case WM_CLOSE:
        check = MessageBox(hWnd, L"프로그램을 종료하시겠습니까?", L"scriptplay.tistory.com\n종료 확인", MB_ICONQUESTION | MB_OKCANCEL);
        if(IDOK == check)
            PostQuitMessage(0);
        break;
    case WM_DESTROY:
        // 프로그램 종료
        PostQuitMessage(0);
        break;
    default:
        // 자신이 처리하지 않는 메시지들의 기본 작업을 대신 처리해주는 함수.
        return DefWindowProc(hWnd, message, wParam, lParam);
    }
    return 0;
}
cs

 

'::public > 윈도우즈 응용 프로그래밍' 카테고리의 다른 글

Timer  (0) 2019.09.24
오목 만들기(결과로직 없음)  (0) 2019.09.24
Bitmap 복사  (0) 2019.09.24
WinProc(윈드 프록)  (0) 2019.09.23
윈도우 좌표 구성  (0) 2019.09.23