1. 用向导创建一个 SDI 程序,在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 中加入:
//
HBRUSH hbr=CreateSolidBrush(RGB(0,255,255));
SetClassLong(m_wndToolBar.m_hWnd,GCL_HBRBACKGROUND,(long)hbr);
m_wndToolBar.EnableDocking(CBRS_ALIGN_TOP);
EnableDocking(CBRS_ALIGN_TOP);
DockControlBar(&m_wndToolBar);
//
return 0;
}
则:窗口如下.
2. 从CToolBar 派生cMtToolbar。
在 CMyToolbar 中,响应:
// CMyToolBar message handlers
void CMyToolBar::OnWindowPosChanged(WINDOWPOS FAR* lpwndpos)
{
CToolBar::OnWindowPosChanged(lpwndpos);
// TODO: Add your message handler code here
if(!IsFloating())
{
CMainFrame *pMain=(CMainFrame *)AfxGetMainWnd();
if(pMain)
{// get frame wid
CRect frmRC;
pMain->GetClientRect(frmRC);
// get toolbar hei
CRect rc;
GetWindowRect(rc);
ScreenToClient(&rc);
MapWindowPoints(pMain,&rc);
//
MoveWindow(-2,-2,frmRC.Width(),rc.Height());
}
}
}
2。这时工具条为:
3。浮动时: