vc sdk 关于 WM_CLOSE 的问题
我用sdk,用GetOpenFileName创建了一个打开文件窗口,但是每次窗口关闭,都会向主程序发送WM_CLOSE消息,我在WM_CLOSE里写了MessageBox...
我用sdk,用GetOpenFileName创建了一个打开文件窗口,但是每次窗口关闭,都会向主程序发送 WM_CLOSE 消息,我在WM_CLOSE里写了MessageBox提示,每次一关就会有提示,怎么办才能无提示主程序又不会被关闭
。。。。。
LRESULT CALLBACK WndProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
switch(uMsg)
{
case WM_COMMAND:
CloseFlag=false;
switch(LOWORD(wParam))
{
case IDM_FILE_NEW:
hDialog_FILE_NEW =CreateDialog(hInstance_bak,MAKEINTRESOURCE(IDD_FILE_NEW),NULL,DialogProc_FILE_NEW);
ShowWindow(hDialog_FILE_NEW,SW_SHOW);
MSG msg;
while (GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
break;
case XXXXX
。。。。。
if (GetOpenFileName(&ofn)==TRUE)
。。。。。。
break;
}
CloseFlag=true;
case WM_CLOSE:
if (CloseFlag) if (IDYES==MessageBox(hwnd,"你确定要退出吗?","注意",MB_YESNO)) DestroyWindow(hwnd);
break;
case WM_DESTROY:
ExitProcess(0);
break;
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
return 0;
}
。。。。。。。。 展开
。。。。。
LRESULT CALLBACK WndProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
switch(uMsg)
{
case WM_COMMAND:
CloseFlag=false;
switch(LOWORD(wParam))
{
case IDM_FILE_NEW:
hDialog_FILE_NEW =CreateDialog(hInstance_bak,MAKEINTRESOURCE(IDD_FILE_NEW),NULL,DialogProc_FILE_NEW);
ShowWindow(hDialog_FILE_NEW,SW_SHOW);
MSG msg;
while (GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
break;
case XXXXX
。。。。。
if (GetOpenFileName(&ofn)==TRUE)
。。。。。。
break;
}
CloseFlag=true;
case WM_CLOSE:
if (CloseFlag) if (IDYES==MessageBox(hwnd,"你确定要退出吗?","注意",MB_YESNO)) DestroyWindow(hwnd);
break;
case WM_DESTROY:
ExitProcess(0);
break;
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
return 0;
}
。。。。。。。。 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询