winAPI

MessageBox 함수

루실리드 2012. 2. 8. 19:15

엉? 팝업 박스 띄우기

 

int MessageBox (

 HWND hWnd,

 LPCSTR lpText,                    // 팝업창에 들어갈 문자열

 LPCSTR lpCaption,               // 타이틀에 들어갈 문자열

 UINT uType                          // 버튼과 아이콘 타입

);

 

버튼의 종류

MB_ABORTRETYIGNORE

    중단, 재시도, 무시

MB_CANCELTRYCONTINUE

    취소, 재시도, 계속

MB_HELP

    확인, 도움말

MB_OK

     확인

MB_OKCANCEL

     확인, 취소

MB_RETRYCANCEL

    재시도, 취소

MB_YESNO

    예, 아니오

MB_YESNOCANCEL

    예, 아니오, 취소

 

아이콘 종류

MB_ICONEXCLAMATION

MB_ICONWARNING

     경고 아이콘   !

MB_ICONINFORMATION
MB_ICONASTERISK

    정보 아이콘    i

MB_ICONSTOP

MB_ICONERROR

MB_ICONHAND

    중지 아이콘 x

 

에....그리고 메시지 박스 리턴 값에 따라서 어떤 버튼이 눌러졌는지 알 수 있다.

IDABORT                  중지 클릭

IDCANCEL                취소 클릭

IDCONTINUE             계속 클릭

IDIGNORE                 무시 클릭

IDNO                        아니오 클릭

IDOK                         OK? OK!

IDRETRY                   재시도 클릭

IDYES                       YES? YES!

 

사용예

 

case WM_LBUTTONDOWN:

 hdc = GetDC(hWnd);

 if( MessageBox( hWnd , L"시스템 종료?" , L"시스템끄기", MB_YESNO ) == IDYES )

 {

   MessageBox( hWnd , L" 뻥이야 안끌꺼야~" ,L" 시스템 종료 클릭!" , MB_OK );

 }else{

   MessageBox( hWnd, L"안속네~", L"아니오 클릭",MB_OK );

 }

 ReleaseDC( hWnd, hdc );

 return 0;

 

어? 메시지 박스 출력하는데 왜? DC가 쓰이지?

.....이것도 출력의 일종으로 봐야 한다는 건가?

......

일단 넘어가자.

 

실행 결과

 

Output.exe

 

 

... 그런데말이지 메시지 박스의 창 닫기 버튼이 왜 비활성화 되는거지?....모르겠네...

Output.exe
0.03MB

'winAPI' 카테고리의 다른 글

WM_PAINT 메시지에 대해  (0) 2012.02.05
GetDC와 ReleseDC 간략 정리  (0) 2012.02.04
윈도우 프로그래밍 기본적인 구조?  (0) 2012.01.30