Application->MessageBoxA 함수의 리턴값은 무슨 버튼을 눌렀는가 입니다.
사용 방법은 윈도우32 API의 MessageBox 함수와 동일합니다.
HWND hWnd만 자동으로 Application->Handle이 들어가도록 되어 있습니다.
어쟀든 이걸 버튼이 3개인 상태에서 쓰려면 어딘가에 값을 저장했다가 비교해야겠죠.
리턴값은 int 형이니...
int ret;
ret = Application->MessageBoxA(생략);
이런 식으로 먼저 메시지 박스를 띄우신 다음에 그 결과를 ret 변수에 저장합니다.
if( ret == IDYES )
{ /* 예스 버튼 선택시 코드 */ }
else if( ret == IDNO )
{ /* 노 버튼 선택시 코드 */ }
else if( ret == IDCANCEL )
{ /* 캔슬 버튼 선택시 코드 */ }
이런식으로 코드를 짜시면 됩니다.
MessageBox 사용법은 MSDN 링크를 달아드릴테니 참고하세요.
http://msdn.microsoft.com/en-us/library/ms645505(v=vs.85).aspx
왕초보 님이 쓰신 글 :
: 버튼을 예, 아니오, 취소를 만들어서 사용하려고 합니다.
: 예하고, 취소는 되는데 아니오가 실행이 안되네요
: 어떻게 해야 중간의 아니오가 실행되게 할수있을까요
:
:
: if(Application->MessageBoxA("예 아니오 취소 선택","예아니오취소",MB_YESNOCANCEL) == IDYES)
: {
: Label1->Caption = " 예";
: }
: else if(MB_YESNOCANCEL == IDNO)
: {
: Label1->Caption = " 아니오";
: }
: else
: {
: Label1->Caption = " 취소";
: }
|