怎么用代码实现?

解决方案 »

  1.   

    dlg0.ShowWindow(SW_HIDE);
    dlg1.ShowWindow(SW_HIDE);
    ...
      

  2.   

    比如我把4个对话框的指针保存在CDialog* ARR_Hand[4];(可以这样定义吗?)
    现在如何来关闭这4个对话框???
    能这样吗?
    for(int i=0; i<4; i++)
    {
       ARR_Hand[i]->ShowWindow(SW_HIDE);
    }
      

  3.   

    可以阿。不过ShowWindow(SW_HIDE); 没有彻底关闭只是隐藏了。
    另外建议使用动态数组!
      

  4.   

    将打开的对话框窗体句柄记录下来然后用循环,隐藏就用BOOL ShowWindow(
      HWND hWnd,     // handle to window
      int nCmdShow   // show state
    );关闭就用BOOL DestroyWindow(
      HWND hWnd   // handle to window to destroy
    );
      

  5.   

    if(::IsWindow(dlg1.GetSafeHwnd()))
        dlg.DestroyWindow();
    if(::IsWindow(dlg2.GetSafeHwnd()))
        dlg.DestroyWindow();
    if(::IsWindow(dlg3.GetSafeHwnd()))
        dlg.DestroyWindow();
    .
    .
    .
    .
    .
    .
      

  6.   

    PostMessage自定义消息到各对话框
      

  7.   

    用vector保存每个对话框的指针...
    打开一个,就push_back一次...