rebar 控件的主要目的是为子窗口中,公共对话框控件,菜单,工具栏容器,依此类推。 此包容由“带的概念支持”。每个带 rebar 能包含控件的句柄是条、位图、文本标签和子窗口的所有组合。
CReBarCtrl 类可以使用来检索和操作特定,rebar 带的信息多成员函数:
GetBandCount 检索当前有数 rebar 控件的。
GetBandInfo 初始化信息的 REBARBANDINFO 结构从指定的条带。 具有相应的 SetBandInfo 成员函数。
GetRect 检索指定的边框。
转到GetRowCount 检索行的数目。rebar 控件的。
IDToIndex 检索指定的索引。
GetBandBorders 检索带的边界。
除了处理之外,某些成员函数是,允许在将特定 rebar 的条件下进行操作。
InsertBand 和 DeleteBand 添加和移除 rebar 带区。 MinimizeBand 和 MaximizeBand 影响特定 rebar 带的当前范围。 MoveBand 更改特定 rebar 带的索引。 ShowBand 显示或隐藏。用户 rebar 的条带。
下面的示例演示添加工具栏 (带m_wndToolBar) 到现有 rebar 控件 (m_wndReBar)。 带通过初始化 rbi 结构然后调用 InsertBand 成员函数的说明:
//load bitmap for toolbar background
m_RebarBitmap.LoadBitmap(IDB_BITMAP1);
//create a toolbar band
m_Toolbar1.Create(this, TBSTYLE_TRANSPARENT | TBSTYLE_FLAT);
m_Toolbar1.LoadToolBar(IDR_MAINFRAME);
REBARBANDINFO rbi = {0};
rbi.cbSize = sizeof(REBARBANDINFO);
rbi.fMask = RBBIM_BACKGROUND | RBBIM_CHILD | RBBIM_CHILDSIZE |
RBBIM_STYLE | RBBIM_TEXT;
rbi.fStyle = RBBS_GRIPPERALWAYS;
rbi.cxMinChild = 300;
rbi.cyMinChild = 50;
rbi.lpText = _T("Band #1");
rbi.cch = 7;
rbi.cx = 300;
rbi.hbmBack = (HBITMAP)m_RebarBitmap;
rbi.hwndChild = (HWND)m_Toolbar1;
m_Rebar.GetReBarCtrl().InsertBand(0, &rbi);