【问题标题】:MFC Docking Dialog outside/without CMainFrameMFC 停靠对话框外部/没有 CMainFrame
【发布时间】:2015-03-22 11:46:37
【问题描述】:

我在谷歌上搜索过,我发现的所有文章都显示在 CMainFrame 本身内创建停靠对话框。我希望/需要能够创建一个弹出对话框,该对话框本身就是一个可停靠对话框,因为我需要创建/添加多个对话框,而不是 CMainFrame。即。

class CustomObjectClassDocking : public CFrameWndEx
{
    public:
    DECLARE_DYNAMIC(CustomObjectClassDocking)
    afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
}

int CustomObjectClassDocking::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    m_wndObjectPane.EnableDocking(CBRS_ALIGN_ANY);
    EnableDocking(CBRS_ALIGN_ANY);
    EnableAutoHidePanes(CBRS_ALIGN_ANY);
    DockPane(&m_wndObjectPane);
}


void StartCustomDockDlg
{
   CustomObjectClassDocking *pCustDock = new CustomObjectClassDocking();
   pCustDock->Create(/*what is suppose to go here?*/); //stuck here currently.
}

*Class 不必继承自 CFrameWndEx,但必须是可停靠的。

有没有人有任何可行的例子,我可以在哪里找到相关信息或我将如何去做?

谢谢。

【问题讨论】:

    标签: c++ windows mfc


    【解决方案1】:

    经过一番搜索/测试,找到了解决方案;

    从上面;

    void StartCustomDockDlg::StartCustomDockingDlg
    {
        CRect wndRect;
        GetWindowRect(wndRect);
       CustomObjectClassDocking *pCustDock = new CustomObjectClassDocking();
       pCustDock->Create(NULL, NULL, WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_BORDER | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME, wndRect, this);
    
    }
    

    以下帮助; C++ MFC Feature Pack --> Create multiple CDockablePanes onto an CDialog

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-19
      • 2010-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多