如题

解决方案 »

  1.   

    创建一个对话框就可以了。
    CreateDialogParam
      

  2.   

    可以执行一个能带SW_SHOW参数的函数,这样就能弹出对话框
      

  3.   

    在mfc activex 控件中,当重载了
    GetControlFlags()  

     DWORD dwFlags = COleControl::GetControlFlags(); 
    dwFlags  ¦= windowlessActivate;  
    return dwFlags; 
    }
    函数后,就不能弹出对话框了
      

  4.   

    用MFC写一个对话框程序,然后控件调用它
      

  5.   

    对话框最好用win32sdk做.不要用mfc的.这样你可以自己定义你的对话框,显示对话框的时候把父窗口指向桌面.看看能不能出来.
      

  6.   

    int DoModal (HWND hWndParent = ::GetActiveWindow(), LPARAM dwInitParam = NULL) {...}
    DoModal时候父窗口自己会指定的吧.
      

  7.   

    加入对MFC的支持的头文件,
    如:
    #include <afxwin.h>         // MFC core and standard components
    #include <afxext.h>         // MFC extensions#ifndef _AFX_NO_OLE_SUPPORT
    #include <afxole.h>         // MFC OLE classes
    #include <afxodlgs.h>       // MFC OLE dialog classes
    #include <afxdisp.h>        // MFC Automation classes
    #endif // _AFX_NO_OLE_SUPPORT
    CDialog dlg;dlg.Create("My Dialog");
    dlg.ShowWindow(WS_SHOW);...................
      

  8.   

    IDD_PIN_INPUT 是添加的对话框资源
    int __stdcall  Dlgproc(HWND   hDlg,   UINT   message,
                               WPARAM   wParam,   LPARAM   lParam)   
    {
    switch (message)
    {
    case WM_INITDIALOG:
    return FALSE;
    case WM_COMMAND:
    if (LOWORD(wParam) == IDCANCEL)     
    {
    EndDialog(hDlg, LOWORD(wParam));
    return   TRUE;   
    }
    if (LOWORD(wParam) == IDOK)
    {
    return   TRUE;   
    }
    break;   
    } return FALSE;   
    }   
    DialogBox(_Module.m_hInst,MAKEINTRESOURCE(IDD_PIN_INPUT), NULL, Dlgproc);上面是我在ATL写word插件时用到了对话框,希望能对你有用
      

  9.   

    在工程里添加一个对话框资源,自动生成对应的类,然后你就用这个类就可以了。
    不过是使用前要加一条:
    AfxEnableControlContainer();
      

  10.   

    #include <Windowsx.h>
    #include "Resource.h"
    INT_PTR WINAPI Dlg_Proc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
    {
    ...
    return(FALSE);}
    int WINAPI _tWinMain(HINSTANCE hinstExe, HINSTANCE, PTSTR pszCmdLine, int)
    {
     DialogBoxParam(hinstExe, MAKEINTRESOURCE(IDD_SOMEDLGRESOURCE), 
             NULL, Dlg_Proc, _ttoi(pszCmdLine));
     return(0);
    }