CReBarCtrl Class
The latest version of this topic can be found at CReBarCtrl Class.
Encapsulates the functionality of a rebar control, which is a container for a child window.
Syntax
class CReBarCtrl : public CWnd
Members
Public Constructors
Name | Description |
---|---|
CReBarCtrl::CReBarCtrl | Constructs a CReBarCtrl object. |
Public Methods
Name | Description |
---|---|
CReBarCtrl::BeginDrag | Places the rebar control into drag-and-drop mode. |
CReBarCtrl::Create | Creates the rebar control and attaches it to the CReBarCtrl object. |
CReBarCtrl::CreateEx | Creates a rebar control with the specified Windows extended styles and attaches it to a CReBarCtrl object. |
CReBarCtrl::DeleteBand | Deletes a band from a rebar control. |
CReBarCtrl::DragMove | Updates the drag position in the rebar control after a call to BeginDrag . |
CReBarCtrl::EndDrag | Terminates the rebar control's drag-and-drop operation. |
CReBarCtrl::GetBandBorders | Retrieves the borders of a band. |
CReBarCtrl::GetBandCount | Retrieves the count of bands currently in the rebar control. |
CReBarCtrl::GetBandInfo | Retrieves information about a specified band in a rebar control. |
CReBarCtrl::GetBandMargins | Retrieves the margins of a band. |
CReBarCtrl::GetBarHeight | Retrieves the height of the rebar control. |
CReBarCtrl::GetBarInfo | Retrieves information about the rebar control and the image list it uses. |
CReBarCtrl::GetBkColor | Retrieves a rebar control's default background color. |
CReBarCtrl::GetColorScheme | Retrieves the COLORSCHEME structure associated with the rebar control. |
CReBarCtrl::GetDropTarget | Retrieves a rebar control's IDropTarget interface pointer. |
CReBarCtrl::GetExtendedStyle | Gets the extended style of the current rebar control. |
CReBarCtrl::GetImageList | Retrieves the image list associated with a rebar control. |
CReBarCtrl::GetPalette | Retrieves the rebar control's current palette. |
CReBarCtrl::GetRect | Retrieves the bounding rectangle for a given band in a rebar control. |
CReBarCtrl::GetRowCount | Retrieves the number of band rows in a rebar control. |
CReBarCtrl::GetRowHeight | Retrieves the height of a specified row in a rebar control. |
CReBarCtrl::GetTextColor | Retrieves a rebar control's default text color. |
CReBarCtrl::GetToolTips | Retrieves the handle to any tool tip control associated with the rebar control. |
CReBarCtrl::HitTest | Determines which portion of a rebar band is at a given point on the screen, if a rebar band exists at that point. |
CReBarCtrl::IDToIndex | Converts a band identifier (ID) to a band index in a rebar control. |
CReBarCtrl::InsertBand | Inserts a new band in a rebar control. |
CReBarCtrl::MaximizeBand | Resizes a band in a rebar control to its largest size. |
CReBarCtrl::MinimizeBand | Resizes a band in a rebar control to its smallest size. |
CReBarCtrl::MoveBand | Moves a band from one index to another. |
CReBarCtrl::PushChevron | Programmatically pushes a chevron. |
CReBarCtrl::RestoreBand | Resizes a band in a rebar control to its ideal size. |
CReBarCtrl::SetBandInfo | Sets characteristics of an existing band in a rebar control. |
CReBarCtrl::SetBandWidth | Sets the width of the specified docked band in the current rebar control. |
CReBarCtrl::SetBarInfo | Sets the characteristics of a rebar control. |
CReBarCtrl::SetBkColor | Sets a rebar control's default background color. |
CReBarCtrl::SetColorScheme | Sets the color scheme for the buttons on a rebar control. |
CReBarCtrl::SetExtendedStyle | Sets the extended styles for the current rebar control. |
CReBarCtrl::SetImageList | Sets a rebar control's image list. |
CReBarCtrl::SetOwner | Sets a rebar control's owner window. |
CReBarCtrl::SetPalette | Sets the rebar control's current palette. |
CReBarCtrl::SetTextColor | Sets a rebar control's default text color. |
CReBarCtrl::SetToolTips | Associates a tool tip control with the rebar control. |
CReBarCtrl::SetWindowTheme | Sets the visual style of the rebar control. |
CReBarCtrl::ShowBand | Shows or hides a given band in a rebar control. |
CReBarCtrl::SizeToRect | Fits a rebar control to a specified rectangle. |
Remarks
The application in which the rebar control resides assigns the child window contained by the rebar control to the rebar band. The child window is usually another common control.
Rebar controls contain one or more bands. Each band can contain a combination of a gripper bar, a bitmap, a text label, and a child window. The band can contain only one of each of these items.
The rebar control can display the child window over a specified background bitmap. All rebar control bands can be resized, except those that use the RBBS_FIXEDSIZE style. As you reposition or resize a rebar control band, the rebar control manages the size and position of the child window assigned to that band. To resize or change the order of bands within the control, click and drag a band's gripper bar.
The following illustration shows a rebar control that has three bands:
Band 0 contains a flat, transparent toolbar control.
Band 1 contains both transparent standard and transparent dropdown buttons.
Band 2 contains a combo box and four standard buttons.
Rebar control
Rebar controls support:
Image lists.
Message-handling.
Custom draw functionality.
A variety of control styles in addition to standard window styles. For a list of these styles, see Rebar Control Styles in the Windows SDK.
For more information, see Using CReBarCtrl.
Inheritance Hierarchy
CReBarCtrl
Requirements
Header: afxcmn.h
CReBarCtrl::BeginDrag
Implements the behavior of the Win32 message RB_BEGINDRAG, as described in the Windows SDK.
void BeginDrag(
UINT uBand,
DWORD dwPos = (DWORD)-1);
Parameters
uBand
Zero-based index of the band that the drag-and-drop operation will affect.
dwPos
A DWORD
value that contains the starting mouse coordinates. The horizontal coordinate is contained in the LOWORD and the vertical coordinate is contained in the HIWORD. If you pass (DWORD)-1
, the rebar control will use the position of the mouse the last time the control's thread called GetMessage or PeekMessage.
CReBarCtrl::Create
Creates the rebar control and attaches it to the CReBarCtrl
object.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parameters
dwStyle
Specifies the combination of rebar control styles applied to the control. See Rebar Control Styles in the Windows SDK for a list of supported styles.
rect
A reference to a CRect object or RECT structure, which is the position and size of the rebar control.
pParentWnd
A pointer to a CWnd object that is the parent window of the rebar control. It must not be NULL.
nID
Specifies the rebar control's control ID.
Return Value
Nonzero if the object was created successfully; otherwise 0.
Remarks
Create a rebar control in two steps:
Call CReBarCtrl to construct a
CReBarCtrl
object.Call this member function, which creates the Windows rebar control and attaches it to the
CReBarCtrl
object.
When you call Create, the common controls are initialized.
Example
CReBarCtrl* pReBarCtrl = new CReBarCtrl();
CRect rect;
GetWindowRect(rect);
pReBarCtrl->Create(RBS_BANDBORDERS, rect, this, AFX_IDW_REBAR);
// Use ReBar Control.
delete pReBarCtrl;
CReBarCtrl::CreateEx
Creates a control (a child window) and associates it with the CReBarCtrl
object.
virtual BOOL CreateEx(
DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parameters
dwExStyle
Specifies the extended style of the control being created. For a list of extended Windows styles, see the dwExStyle
parameter for CreateWindowEx in the Windows SDK.
dwStyle
Specifies the combination of rebar control styles applied to the control. For a list of supported styles, see Rebar Control Styles in the Windows SDK.
rect
A reference to a RECT structure describing the size and position of the window to be created, in client coordinates of pParentWnd
.
pParentWnd
A pointer to the window that is the control's parent.
nID
The control's child-window ID.
Return Value
Nonzero if successful; otherwise 0.
Remarks
Use CreateEx
instead of Create to apply extended Windows styles, specified by the Windows extended style preface WS_EX_.
CReBarCtrl::CReBarCtrl
Creates a CReBarCtrl
object.
CReBarCtrl();
Example
See the example for CReBarCtrl::Create.
CReBarCtrl::DeleteBand
Implements the behavior of the Win32 message RB_DELETEBAND, as described in the Windows SDK.
BOOL DeleteBand(UINT uBand);
Parameters
uBand
Zero-based index of the band to be deleted.
Return Value
Nonzero if the band deleted successfully; otherwise zero.
Example
UINT nCount = m_wndReBar.GetReBarCtrl().GetBandCount();
if (nCount > 0)
m_wndReBar.GetReBarCtrl().DeleteBand(nCount - 1);
CReBarCtrl::DragMove
Implements the behavior of the Win32 message RB_DRAGMOVE, as described in the Windows SDK.
void DragMove(DWORD dwPos = (DWORD)-1);
Parameters
dwPos
A DWORD
value that contains the new mouse coordinates. The horizontal coordinate is contained in the LOWORD and the vertical coordinate is contained in the HIWORD. If you pass (DWORD)-1
, the rebar control will use the position of the mouse the last time the control's thread called GetMessage or PeekMessage.
CReBarCtrl::EndDrag
Implements the behavior of the Win32 message RB_ENDDRAG, as described in the Windows SDK.
void EndDrag();
CReBarCtrl::GetBandBorders
Implements the behavior of the Win32 message RB_GETBANDBORDERS, as described in the Windows SDK.
void GetBandBorders(
UINT uBand,
LPRECT prc) const;
Parameters
uBand
Zero-based index of the band for which the borders will be retrieved.
prc
A pointer to a RECT structure that will receive the band borders. If the rebar control has the RBS_BANDBORDERS style, each member of this structure will receive the number of pixels, on the corresponding side of the band, that constitute the border. If the rebar control does not have the RBS_BANDBORDERS style, only the left member of this structure receives valid information. For a description of rebar control styles, see Rebar Control Styles in the Windows SDK.
CReBarCtrl::GetBandCount
Implements the behavior of the Win32 message RB_GETBANDCOUNT, as described in the Windows SDK.
UINT GetBandCount() const;
Return Value
The number of bands assigned to the control.
CReBarCtrl::GetBandInfo
Implements the behavior of the Win32 message RB_GETBANDINFO as described in the Windows SDK.
BOOL GetBandInfo(
UINT uBand,
REBARBANDINFO* prbbi) const;
Parameters
uBand
Zero-based index of the band for which the information will be retrieved.
prbbi
A pointer to a REBARBANDINFO structure to receive the band information. You must set the cbSize
member of this structure to sizeof(REBARBANDINFO)
and set the fMask member to the items you want to retrieve before sending this message.
Return Value
Nonzero if successful; otherwise zero.
CReBarCtrl::GetBandMargins
Retrieves the margins of the band.
void GetBandMargins(PMARGINS pMargins);
Parameters
pMargins
A pointer to a MARGINSstructure that will receive the information.
Remarks
This member function emulates the functionality of the RB_GETBANDMARGINS message, as described in the Windows SDK.
CReBarCtrl::GetBarHeight
Retrieves the height of the rebar bar.
UINT GetBarHeight() const;
Return Value
Value that represents the height, in pixels, of the control.
CReBarCtrl::GetBarInfo
Implements the behavior of the Win32 message RB_GETBARINFO, as described in the Windows SDK.
BOOL GetBarInfo(REBARINFO* prbi) const;
Parameters
prbi
A pointer to a REBARINFO structure that will receive the rebar control information. You must set the cbSize
member of this structure to sizeof(REBARINFO)
before sending this message.
Return Value
Nonzero if successful; otherwise zero.
CReBarCtrl::GetBkColor
Implements the behavior of the Win32 message RB_GETBKCOLOR, as described in the Windows SDK.
COLORREF GetBkColor() const;
Return Value
A COLORREF value that represent the current default background color.
CReBarCtrl::GetColorScheme
Retrieves the COLORSCHEME structure for the rebar control.
BOOL GetColorScheme(COLORSCHEME* lpcs);
Parameters
lpcs
A pointer to a COLORSCHEME structure, as described in the Windows SDK.
Return Value
Nonzero if successful; otherwise zero.
Remarks
The COLORSCHEME structure includes the button highlight color and the button shadow color.
CReBarCtrl::GetDropTarget
Implements the behavior of the Win32 message RB_GETDROPTARGET, as described in the Windows SDK.
IDropTarget* GetDropTarget() const;
Return Value
A pointer to an IDropTarget interface.
CReBarCtrl::GetExtendedStyle
Gets the extended styles of the current rebar control.
DWORD GetExtendedStyle() const;
Return Value
A bitwise combination (OR) of flags that indicate the extended styles. The possible flags are RBS_EX_SPLITTER
and RBS_EX_TRANSPARENT
. For more information, see the dwMask
parameter of the CReBarCtrl::SetExtendedStyle method.
Remarks
This method sends the RB_GETEXTENDEDSTYLE message, which is described in the Windows SDK.
CReBarCtrl::GetImageList
Gets the CImageList
object associated with a rebar control.
CImageList* GetImageList() const;
Return Value
A pointer to a CImageList object. Returns NULL if no image list is set for the control.
Remarks
This member function uses size and mask information stored in the REBARINFO structure, as described in the Windows SDK.
CReBarCtrl::GetPalette
Retrieves the rebar control's current palette.
CPalette* GetPalette() const;
Return Value
A pointer to a CPalette object specifying the rebar control's current palette.
Remarks
Note that this member function uses a CPalette
object as its return value, rather than an HPALETTE
.
Example
CPalette* pPalette = m_wndReBar.GetReBarCtrl().GetPalette();
if (pPalette)
{
int nEntries = pPalette->GetEntryCount();
CString msg;
msg.Format(_T("Number of palette entries: %d"), nEntries);
AfxMessageBox(msg);
}
else
{
AfxMessageBox(_T("No palette!"));
}
CReBarCtrl::GetRect
Implements the behavior of the Win32 message RB_GETRECT, as described in the Windows SDK.
BOOL GetRect(
UINT uBand,
LPRECT prc) const;
Parameters
uBand
Zero-based index of a band in the rebar control.
prc
A pointer to a RECT structure that will receive the bounds of the rebar band.
Return Value
Nonzero if successful; otherwise zero.
Example
CRect rc;
m_wndReBar.GetReBarCtrl().GetRect(0, &rc);
CString msg;
msg.Format(_T("rect.left = %d, rect.top = %d, ")
_T("rect.right = %d, rect.bottom = %d"), rc.left,
rc.top, rc.right, rc.bottom);
AfxMessageBox(msg);
CReBarCtrl::GetRowCount
Implements the behavior of the Win32 message RB_GETROWCOUNT, as described in the Windows SDK.
UINT GetRowCount() const;
Return Value
A UINT value that represents the number of band rows in the control.
Example
UINT nRowCount = m_wndReBar.GetReBarCtrl().GetRowCount();
CString msg;
msg.Format(_T("Row Count is %d"), nRowCount);
AfxMessageBox(msg);
CReBarCtrl::GetRowHeight
Implements the behavior of the Win32 message RB_GETROWHEIGHT, as described in the Windows SDK.
UINT GetRowHeight(UINT uRow) const;
Parameters
uRow
Zero-based index of the band that will have its height retrieved.
Return Value
A UINT value that represents the row height, in pixels.
Example
int nCount = m_wndReBar.GetReBarCtrl().GetRowCount();
for (int i = 0; i < nCount; i++)
{
UINT nHeight = m_wndReBar.GetReBarCtrl().GetRowHeight(i);
CString msg;
msg.Format(_T("Height of row %d is %u"), i, nHeight);
AfxMessageBox(msg);
}
CReBarCtrl::GetTextColor
Implements the behavior of the Win32 message RB_GETTEXTCOLOR, as described in the Windows SDK.
COLORREF GetTextColor() const;
Return Value
A COLORREF value that represent the current default text color.
CReBarCtrl::GetToolTips
Implements the behavior of the Win32 message RB_GETTOOLTIPS, as described in the Windows SDK.
CToolTipCtrl* GetToolTips() const;
Return Value
A pointer to a CToolTipCtrl object.
Remarks
Note that the MFC implementation of GetToolTips
returns a pointer to a CToolTipCtrl
, rather than an HWND
.
CReBarCtrl::HitTest
Implements the behavior of the Win32 message RB_HITTEST, as described in the Windows SDK.
int HitTest(RBHITTESTINFO* prbht);
Parameters
prbht
A pointer to a RBHITTESTINFO structure. Before sending the message, the pt member of this structure must be initialized to the point that will be tested, in client coordinates.
Return Value
The zero-based index of the band at the given point, or -1 if no rebar band was at the point.
CReBarCtrl::IDToIndex
Implements the behavior of the Win32 message RB_IDTOINDEX, as described in the Windows SDK.
int IDToIndex(UINT uBandID) const;
Parameters
uBandID
The application-defined identifier of the specified band, passed in the wID member of the REBARBANDINFO structure when the band is inserted.
Return Value
The zero-based band index if successful, or -1 otherwise. If duplicate band indices exist, the first one is returned.
CReBarCtrl::InsertBand
Implements the behavior of the Win32 message RB_INSERTBAND, as described in the Windows SDK.
BOOL InsertBand(
UINT uIndex,
REBARBANDINFO* prbbi);
Parameters
uIndex
Zero-based index of the location where the band will be inserted. If you set this parameter to -1, the control will add the new band at the last location.
prbbi
A pointer to a REBARBANDINFO structure that defines the band to be inserted. You must set the cbSize
member of this structure to sizeof(REBARBANDINFO)
before calling this function.
Return Value
Nonzero if successful; otherwise zero.
Example
REBARBANDINFO rbbi = {0};
rbbi.cbSize = sizeof(rbbi);
TCHAR szText[80];
rbbi.lpText = szText;
rbbi.cch = sizeof(szText) / sizeof(szText[0]);
rbbi.fMask = RBBIM_BACKGROUND | RBBIM_CHILD |
RBBIM_CHILDSIZE | RBBIM_COLORS | RBBIM_HEADERSIZE |
RBBIM_IDEALSIZE | RBBIM_ID | RBBIM_IMAGE |
RBBIM_LPARAM | RBBIM_SIZE | RBBIM_STYLE | RBBIM_TEXT;
m_wndReBar.GetReBarCtrl().GetBandInfo(0, &rbbi);
m_wndReBar.GetReBarCtrl().InsertBand(1, &rbbi);
CReBarCtrl::MaximizeBand
Resizes a band in a rebar control to its largest size.
void MaximizeBand(UINT uBand);
Parameters
uBand
Zero-based index of the band to be maximized.
Remarks
Implements the behavior of the Win32 message RB_MAXIMIZEBAND with fIdeal
set to 0, as described in the Windows SDK.
Example
CReBarCtrl& refReBarCtrl = m_wndReBar.GetReBarCtrl();
UINT nCount = refReBarCtrl.GetBandCount();
for (UINT i = 0; i < nCount; i++)
refReBarCtrl.MaximizeBand(i);
CReBarCtrl::MinimizeBand
Resizes a band in a rebar control to its smallest size.
void MinimizeBand(UINT uBand);
Parameters
uBand
Zero-based index of the band to be minimized.
Remarks
Implements the behavior of the Win32 message RB_MINIMIZEBAND, as described in the Windows SDK.
Example
CReBarCtrl& refReBarCtrl = m_wndReBar.GetReBarCtrl();
UINT nCount = refReBarCtrl.GetBandCount();
for (UINT i = 0; i < nCount; i++)
refReBarCtrl.MinimizeBand(i);
CReBarCtrl::MoveBand
Implements the behavior of the Win32 message RB_MOVEBAND, as described in the Windows SDK.
BOOL MoveBand(
UINT uFrom,
UINT uTo);
Parameters
uFrom
Zero-based index of the band to be moved.
uTo
Zero-based index of the new band position. This parameter value must never be greater than the number of bands minus one. To obtain the number of bands, call GetBandCount.
Return Value
Nonzero if successful; otherwise zero.
CReBarCtrl::PushChevron
Implements the behavior of the Win32 message RB_PUSHCHEVRON, as described in the Windows SDK.
void PushChevron(
UINT uBand,
LPARAM lAppValue);
Parameters
uBand
Zero-based index of the band whose chevron is to be pushed.
lAppValue
An application defined 32-bit value. See lAppValue
in RB_PUSHCHEVRON in the Windows SDK.
CReBarCtrl::RestoreBand
Resizes a band in a rebar control to its ideal size.
void RestoreBand(UINT uBand);
Parameters
uBand
Zero-based index of the band to be maximized.
Remarks
Implements the behavior of the Win32 message RB_MAXIMIZEBAND with fIdeal
set to 1, as described in the Windows SDK.
Example
CReBarCtrl& refReBarCtrl = m_wndReBar.GetReBarCtrl();
UINT nCount = refReBarCtrl.GetBandCount();
for (UINT i = 0; i < nCount; i++)
refReBarCtrl.RestoreBand(i);
CReBarCtrl::SetBandInfo
Implements the behavior of the Win32 message RB_SETBANDINFO, as described in the Windows SDK.
BOOL SetBandInfo(
UINT uBand,
REBARBANDINFO* prbbi);
Parameters
uBand
Zero-based index of the band to receive the new settings.
prbbi
Pointer to a REBARBANDINFO structure that defines the band to be inserted. You must set the cbSize
member of this structure to sizeof(REBARBANDINFO)
before sending this message.
Return Value
Nonzero if successful; otherwise zero.
Example
int nCount = m_wndReBar.GetReBarCtrl().GetBandCount();
CString strText;
REBARBANDINFO rbbi = {0};
rbbi.cbSize = sizeof(rbbi);
for (int i = 0; i < nCount; i++)
{
strText.Format(_T("Band #: %d"), i);
rbbi.lpText = strText.GetBuffer();
rbbi.cch = strText.GetLength() + 1;
rbbi.fMask = RBBIM_TEXT;
m_wndReBar.GetReBarCtrl().SetBandInfo(i, &rbbi);
strText.ReleaseBuffer();
}
CReBarCtrl::SetBandWidth
Sets the width of the specified docked band in the current rebar control.
BOOL SetBandWidth(
UINT uBand,
int cxWidth);
Parameters
Parameter | Description |
---|---|
[in] uBand |
Zero-based index of a rebar band. |
[in] cxWidth |
New width of the rebar band, in pixels. |
Return Value
true
if the method is successful; otherwise, false
.
Remarks
This method sends the RB_SETBANDWIDTH message, which is described in the Windows SDK.
Example
The following code example defines the variable, m_rebar
, that is used to access the current rebar control. This variable is used in the next example.
public:
CReBarCtrl m_rebar;
BOOL bRet;
static const int TOTAL_BANDS = 5;
static const int BUFFER_SIZE = 10;
Example
The following code example sets each rebar band to be the same width.
// Set the width of each band.
m_rebar.GetClientRect( &rect );
int iWidth = rect.Width()/TOTAL_BANDS;
for (int iIndex=0; iIndex < TOTAL_BANDS; iIndex++)
bRet = m_rebar.SetBandWidth(iIndex, iWidth);
CReBarCtrl::SetBarInfo
Implements the behavior of the Win32 message RB_SETBARINFO, as described in the Windows SDK.
BOOL SetBarInfo(REBARINFO* prbi);
Parameters
prbi
A pointer to a REBARINFO structure that contains the information to be set. You must set the cbSize
member of this structure to sizeof(REBARINFO)
before sending this message
Return Value
Nonzero if successful; otherwise zero.
Example
REBARINFO rbi = {0};
rbi.cbSize = sizeof(REBARINFO);
rbi.fMask = 0;
rbi.himl = 0;
m_wndReBar.GetReBarCtrl().SetBarInfo(&rbi);
CReBarCtrl::SetBkColor
Implements the behavior of the Win32 message RB_SETBKCOLOR, as described in the Windows SDK.
COLORREF SetBkColor(COLORREF clr);
Parameters
clr
The COLORREF value that represents the new default background color.
Return Value
A COLORREF value that represents the previous default background color.
Remarks
See this topic for more information about when to set the background color, and how to set the default.
CReBarCtrl::SetColorScheme
Sets the color scheme for the buttons on a rebar control.
void SetColorScheme(const COLORSCHEME* lpcs);
Parameters
lpcs
A pointer to a COLORSCHEME structure, as described in the Windows SDK.
Remarks
The COLORSCHEME structure includes both the button highlight color and the button shadow color.
CReBarCtrl::SetExtendedStyle
Sets the extended styles for the current rebar control.
DWORD SetExtendedStyle(
DWORD dwMask,
DWORD dwStyleEx);
Parameters
Parameter | Description |
---|---|
[in] dwMask |
A bitwise combination (OR) of flags that specify which flags in the dwStyleEx parameter apply. Use one or more of the following values:RBS_EX_SPLITTER: By default, show the splitter on the bottom in horizontal mode, and to the right in vertical mode. RBS_EX_TRANSPARENT: Forward the WM_ERASEBKGND message to the parent window. |
[in] dwStyleEx |
A bitwise combination (OR) of flags that specify the styles to apply. To set a style, specify the same flag that is used in the dwMask parameter. To reset a style, specify binary zero. |
Return Value
The previous extended style.
Remarks
This method sends the RB_SETEXTENDEDSTYLE message, which is described in the Windows SDK.
CReBarCtrl::SetImageList
Assigns an image list to a rebar control.
BOOL SetImageList(CImageList* pImageList);
Parameters
pImageList
A pointer to a CImageList object containing the image list to be assigned to the rebar control.
Return Value
Nonzero if successful; otherwise zero.
CReBarCtrl::SetOwner
Implements the behavior of the Win32 message RB_SETPARENT, as described in the Windows SDK.
CWnd* SetOwner(CWnd* pWnd);
Parameters
pWnd
A pointer to a CWnd
object to set as the owner of the rebar control.
Return Value
A pointer to a CWnd object that is the current owner of the rebar control.
Remarks
Note that this member function uses pointers to CWnd
objects for both the current and selected owner of the rebar control, rather than handles to windows.
Note
This member function does not change the actual parent that was set when the control was created; rather it sends notification messages to the window you specify.
CReBarCtrl::SetPalette
Implements the behavior of the Win32 message RB_SETPALETTE, as described in the Windows SDK.
CPalette* SetPalette(HPALETTE hPal);
Parameters
hPal
An HPALETTE
that specifies the new palette that the rebar control will use.
Return Value
A pointer to a CPalette object specifying the rebar control's previous palette.
Remarks
Note that this member function uses a CPalette
object as its return value, rather than an HPALETTE
.
CReBarCtrl::SetTextColor
Implements the behavior of the Win32 message RB_SETTEXTCOLOR, as described in the Windows SDK.
COLORREF SetTextColor(COLORREF clr);
Parameters
clr
A COLORREF value that represents the new text color in the CReBarCtrl
object.
Return Value
The COLORREF value representing the previous text color associated with the CReBarCtrl
object.
Remarks
It is provided to support text color flexibility in a rebar control.
CReBarCtrl::SetToolTips
Associates a tool tip control with a rebar control.
void SetToolTips(CToolTipCtrl* pToolTip);
Parameters
pToolTip
A pointer to a CToolTipCtrl object
Remarks
You must destroy the CToolTipCtrl
object when you are done with it.
CReBarCtrl::SetWindowTheme
Sets the visual style of the rebar control.
HRESULT SetWindowTheme(LPCWSTR pszSubAppName);
Parameters
pszSubAppName
A pointer to a Unicode string that contains the rebar visual style to set.
Return Value
The return value is not used.
Remarks
This member function emulates the functionality of the RB_SETWINDOWTHEME message, as described in the Windows SDK.
CReBarCtrl::ShowBand
Implements the behavior of the Win32 message RB_SHOWBAND, as described in the Windows SDK.
BOOL ShowBand(
UINT uBand,
BOOL fShow = TRUE);
Parameters
uBand
Zero-based index of a band in the rebar control.
fShow
Indicates if the band should be shown or hidden. If this value is TRUE, the band will be shown. Otherwise, the band will be hidden.
Return Value
Nonzero if successful; otherwise zero.
CReBarCtrl::SizeToRect
Implements the behavior of the Win32 message RB_SIZETORECT, as described in the Windows SDK.
BOOL SizeToRect(CRect& rect);
Parameters
rect
A reference to a CRect object that specifies the rectangle that the rebar control should be sized to.
Return Value
Nonzero if successful; otherwise zero.
Remarks
Note that this member function uses a CRect
object as a parameter, rather than a RECT
structure.