void CwlcomeDlg::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
AFX_MANAGE_STATE(AfxGetStaticModuleState());
{CZLZDlg dlg_z;
dlg_z.DoModal();
HWND * pWnd=::FindWindow(NULL,"IDD_DIALOG1");//获得当前窗口句柄 , 你的窗口的名字
pWnd->DestroyWindow();
} }
{
// TODO: 在此添加控件通知处理程序代码
AFX_MANAGE_STATE(AfxGetStaticModuleState());
{CZLZDlg dlg_z;
dlg_z.DoModal();
HWND * pWnd=::FindWindow(NULL,"IDD_DIALOG1");//获得当前窗口句柄 , 你的窗口的名字
pWnd->DestroyWindow();
} }
{
// TODO: 在此添加控件通知处理程序代码
AFX_MANAGE_STATE(AfxGetStaticModuleState());
{CZLZDlg dlg_z;
dlg_z.DoModal();
HWND hWnd=::FindWindow(NULL, _T("IDD_DIALOG1"));//获得当前窗口句柄 , 你的窗口的名字
hWnd->DestroyWindow();
} }请问楼上,改了之后,编译为什么出现 error C2228: “.DestroyWindow”的左侧必须有类/结构/联合类型
HWND hWnd=::FindWindow(NULL, _T("IDD_DIALOG1"));
if(hWnd)
{
::PostMessage(hWnd, WM_CLOSE, 0, 0);
}
{
// TODO: 在此添加控件通知处理程序代码
AFX_MANAGE_STATE(AfxGetStaticModuleState());
{CZLZDlg dlg_z;
dlg_z.DoModal();
HWND hWnd=::FindWindow(NULL, _T("IDD_DIALOG1"));//获得当前窗口句柄 , 你的窗口的名字
//DestroyWindow();
if(hWnd)
{
::PostMessage(hWnd, WM_CLOSE, 0, 0);
}
} }
编译没问题了,为什么点击确定后原来的对话框不关闭呢?
你是基础知识太薄弱了,多看书吧,理论上知识要够,再写代码。
void CwlcomeDlg::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码AFX_MANAGE_STATE(AfxGetStaticModuleState());
/*注:dlg_z是要打开的对话 框,IDD_DIALOG1是要关闭的对话框的ID,这两个不是同一个*/
{CZLZDlg dlg_z;
dlg_z.DoModal();
HWND hWnd=::FindWindow(NULL, _T("IDD_DIALOG1"));//获得当前窗口句柄
//DestroyWindow();
if(hWnd)
{
::PostMessage(hWnd, WM_CLOSE, 0, 0);
}
}}
功能为什么实现不了