gpt4 book ai didi

c++ - 创建时自动隐藏 CDockablePane

转载 作者:行者123 更新时间:2023-11-28 02:47:35 25 4
gpt4 key购买 nike

我有 3 个可停靠 Pane ,每个 Pane 包含 1 张图像。一个在左边,一个在右边,一个不可见。问题是,我想默认隐藏右边的那个,让左边的占据整个空间。我搜索了文档,发现我应该在我的 Pane 中调用以下内容,但没有任何反应。

ToggleAutoHide();

我不知道我错过了什么......这是我的创建代码以防它有帮助:

// image docking panel creation
if (!m_wndRawImage.Create(_T("Raw Image"), this, imgRect, TRUE, ID_VIEW_RAWIMGWND, dwPaneStyle| CBRS_RIGHT, AFX_CBRS_REGULAR_TABS, AFX_CBRS_RESIZE))
{
TRACE0("Failed to create image tab window\n");
return -1;
}

if (!m_wndRefImage.Create(_T("Reference Image"), this, imgRect, TRUE, ID_VIEW_REFIMGWND, dwPaneStyle| CBRS_RIGHT))
{
TRACE0("Failed to create image tab window\n");
return -1;
}

if (!m_wndCalibImage.Create(_T("Calibrated Image"), this, imgRect, TRUE, ID_VIEW_CALIBIMGWND, dwPaneStyle| CBRS_RIGHT))
{
TRACE0("Failed to create image tab window\n");
return -1;
}

m_wndImagePane1.EnableDocking(CBRS_ALIGN_RIGHT | CBRS_ALIGN_LEFT);
m_wndImagePane2.EnableDocking(CBRS_ALIGN_RIGHT | CBRS_ALIGN_LEFT);
m_wndImagePane3.EnableDocking(CBRS_ALIGN_RIGHT | CBRS_ALIGN_LEFT);

CDockingManager::SetDockingMode(DT_SMART);

EnableDocking(CBRS_ALIGN_ANY);
EnableAutoHidePanes(CBRS_ALIGN_ANY);


// image panes
DockPane(&m_wndImagePane3);
CDockablePane* pTabbedBar2 = NULL;
m_wndImagePane2.AttachToTabWnd(&m_wndImagePane3, DM_SHOW, FALSE, &pTabbedBar2);
m_wndImagePane2.ShowPane(FALSE, FALSE, FALSE);
m_wndImagePane3.ShowPane(TRUE, FALSE, TRUE);
m_wndImagePane3.ToggleAutoHide(); //<---- Problem is here

DockPane(&m_wndImagePane1);
m_wndImagePane1.ShowPane(TRUE, FALSE, TRUE);

谢谢!

最佳答案

如果我对你的问题的理解是正确的,你想在应用程序启动时隐藏一个 Pane 。

我使用 ON_WM_SHOWWINDOW() 消息来隐藏 Pane 。像这样:

将此添加到 CMainFrame 类声明:

afx_msg void OnShowWindow(BOOL bShow, UINT nStatus);

并将其添加到消息映射:

ON_WM_SHOWWINDOW()

并将其添加到您的主代码中:

void CMainFrame::OnShowWindow(BOOL bShow, UINT nStatus)
{
CFrameWndEx::OnShowWindow(bShow, nStatus);

// Hide Properties pane in startup
m_wndProperties.SetAutoHideMode(FALSE, CBRS_ALIGN_ANY);
m_wndProperties.ShowPane(FALSE, FALSE, FALSE);
}

希望对您有所帮助!

关于c++ - 创建时自动隐藏 CDockablePane,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23940030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com