0
创建水平或垂直定向的自定义工具栏尝试垂直定向CControlBar - 来自自定义工具栏。大概没有结果,因为它总是水平的或者总是垂直的,或者我实际上不知道 - 太多的参数要同步,我很害怕!MFC:基于CControlBar
这里是我到目前为止有:
// creating the CControlBar-derived toolbar
CMyCB cb; // CControlBar-derived toolbar
cb.Create( AfxRegisterWndClass(0),
NULL,
WS_CHILD | WS_VISIBLE ,
CRect(0,0,100,100),
AfxGetMainWnd(),
0
);
cb.SetBarStyle(cb.GetBarStyle() | CBRS_LEFT | CBRS_SIZE_DYNAMIC | CBRS_GRIPPER);
cb.EnableDocking(CBRS_ORIENT_HORZ);
// in CFrameWnd-derived window constructor
this->EnableDocking(CBRS_ALIGN_ANY);
this->FloatControlBar(&cb, CPoint(100,100), CBRS_ALIGN_LEFT);
this->ShowControlBar(&cb, TRUE, FALSE);
观察如何CControlBar :: CalcFixedLayout(在CMyCB重写)是通过将一个断点那里叫,我可以看到它的bHorz参数(通知cb是水平还是垂直工具栏)对于第一个调用而言为“2”,对于随后的第二个调用则为“0”。
我能从中得出什么结论?有没有办法创建一个水平一致或垂直一致的自定义工具栏? (至少对于bHorz自变量)请参阅上述代码段中的参数CBRS_ *。非常感谢。
托马斯