[200分]求用SDK在Dll中显示非模式对话框的简单问题,来者有分
对SDK不太懂
在Dll中显示非模式对话框出现问题:
对话框正常出现可以响应Button事件,但是不能移动窗口,最小化,关闭按键不能用
部分代码:
直接创建,没有注册窗口类,调用方式:动态显式调用
hWnd = CreateDialog((HINSTANCE)hMoudle,MAKEINTRESOURCE(IDD_DLGOK),NULL,(DLGPROC)WndDlgProc);
while(GetMessage(&msg,NULL,0,0))
{
if (!IsWindow(hWnd) ||!IsDialogMessage(hWnd, &msg))//有没有这个者一样
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
LRESULT CALLBACK WndDlgProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)
{
switch(message)
{
case WM_INITDIALOG:
MessageBox(hWnd,"OK1","ok",MB_OK);//正常显示
break;
case WM_CLOSE:
DestroyWindow(hWnd);
break;
case WM_COMMAND:
{
if(IDC_BTNEXIT == LOWORD(wParam))
DestroyWindow(hWnd);//正常关闭
}
break;
default :
return DefWindowProc(hWnd,message,wParam,lParam);
}
return FALSE;
}
希望各位多多帮忙