问题描述:
VC9中,CDockablePane的派生类C1,C2。C1中有事件创建C2的对象,C2通过
CDockablePane* pTabbedBar = NULL;
C2.AttachToTabWnd(&C1, DM_SHOW, TRUE, &pTabbedBar);
与C1呈选项卡的方式显示,但是C1自动隐藏时,要是通过按钮显示C2,程序就会崩溃。
跟踪时,发现运行至C2.AttachToTabWnd(&C1, DM_SHOW, TRUE, &pTabbedBar);这一行出错。
回避该错误的出现:
我将VS2008中个悬浮窗体的默认风格修改了一下,使其不可以自动隐藏。
具体做法:去掉CMainFrame::OnCreate()中的一段代码
// 启用 Visual Studio 2005 样式停靠窗口自动隐藏行为
//EnableAutoHidePanes(CBRS_ALIGN_ANY);