Класс CReBarCtrl

Инкапсулирует функциональность элемента управления "главная панель ", который представляет собой контейнер для дочернего окна.

Синтаксис

class CReBarCtrl : public CWnd

Участники

Открытые конструкторы

Имя Описание
CReBarCtrl::CReBarCtrl Формирует объект CReBarCtrl.

Открытые методы

Имя Описание
CReBarCtrl::BeginDrag Помещает элемент управления rebar в режим перетаскивания.
CReBarCtrl::Create Создает элемент управления rebar и присоединяет его к объекту CReBarCtrl .
CReBarCtrl::CreateEx Создает элемент управления rebar с указанными расширенными стилями Windows и присоединяет его к объекту CReBarCtrl .
CReBarCtrl::D eleteBand Удаляет полосу из элемента управления rebar.
CReBarCtrl::D ragMove Обновления положение перетаскивания в элементе управления перекладивкой после вызоваBeginDrag.
CReBarCtrl::EndDrag Завершает операцию перетаскивания элемента управления перекладиной панели.
CReBarCtrl::GetBandBorders Извлекает границы полосы.
CReBarCtrl::GetBandCount Извлекает количество полос в данный момент в элементе управления перебары.
CReBarCtrl::GetBandInfo Извлекает сведения об указанной полосе в элементе управления перекладиной.
CReBarCtrl::GetBandMargins Извлекает поля полосы.
CReBarCtrl::GetBarHeight Извлекает высоту элемента управления перекладиной.
CReBarCtrl::GetBarInfo Извлекает сведения об элементе управления rebar и списке изображений, который он использует.
CReBarCtrl::GetBkColor Извлекает цвет фона элемента управления rebar по умолчанию.
CReBarCtrl::GetColorScheme Извлекает структуру COLORSCHEME , связанную с элементом управления rebar.
CReBarCtrl::GetDropTarget Извлекает указатель интерфейса элемента управления IDropTarget rebar.
CReBarCtrl::GetExtendedStyle Возвращает расширенный стиль текущего элемента управления перебары.
CReBarCtrl::GetImageList Извлекает список изображений, связанный с элементом управления rebar.
CReBarCtrl::GetPalette Извлекает текущую палитру элемента управления rebar.
CReBarCtrl::GetRect Извлекает ограничивающий прямоугольник для заданной полосы в элементе управления перекладивание.
CReBarCtrl::GetRowCount Извлекает количество строк полосы в элементе управления перестроения.
CReBarCtrl::GetRowHeight Извлекает высоту указанной строки в элементе управления перестроения.
CReBarCtrl::GetTextColor Извлекает цвет текста элемента управления перебары по умолчанию.
CReBarCtrl::GetTool Советы Извлекает дескриптор для любого элемента управления подсказки средства, связанного с элементом управления перекладиной.
CReBarCtrl::HitTest Определяет, какая часть полосы перекладки находится в заданной точке на экране, если полоса перекладки существует в этой точке.
CReBarCtrl::IDToIndex Преобразует идентификатор полосы (ID) в индекс полосы в элементе управления rebar.
CReBarCtrl::InsertBand Вставляет новую полосу в элемент управления rebar.
CReBarCtrl::MaximizeBand Изменяет размер полосы в элементе управления перебарикой до самого большого размера.
CReBarCtrl::MinimizeBand Изменяет размер полосы в элементе управления перестроек до наименьшего размера.
CReBarCtrl::MoveBand Перемещает полосу из одного индекса в другой.
CReBarCtrl::P ushChevron Программно толкает шеврон.
CReBarCtrl::RestoreBand Изменяет размер полосы в элементе управления ребарю до его идеального размера.
CReBarCtrl::SetBandInfo Задает характеристики существующей полосы в элементе управления ребарю.
CReBarCtrl::SetBandWidth Задает ширину указанной закрепленной полосы в текущем элементе управления перебары.
CReBarCtrl::SetBarInfo Задает характеристики элемента управления перекладиной.
CReBarCtrl::SetBkColor Задает цвет фона элемента управления rebar по умолчанию.
CReBarCtrl::SetColorScheme Задает цветовую схему для кнопок на панели управления.
CReBarCtrl::SetExtendedStyle Задает расширенные стили для текущего элемента управления перебары.
CReBarCtrl::SetImageList Задает список изображений элемента управления rebar.
CReBarCtrl::SetOwner Задает окно владельца элемента управления rebar.
CReBarCtrl::SetPalette Задает текущую палитру элемента управления перебары.
CReBarCtrl::SetTextColor Задает цвет текста элемента управления перекладиной по умолчанию.
CReBarCtrl::SetTool Советы Связывает элемент управления подсказки средства с элементом управления "Перекладка".
CReBarCtrl::SetWindowTheme Задает визуальный стиль элемента управления rebar.
CReBarCtrl::ShowBand Отображает или скрывает заданную полосу в элементе управления перекладиной.
CReBarCtrl::SizeToRect Помещает элемент управления rebar в указанный прямоугольник.

Замечания

Приложение, в котором находится элемент управления rebar, назначает дочернее окно, содержащееся элементом управления rebar для полосы перекладки. Дочернее окно обычно является другим общим элементом управления.

Элементы управления rebar содержат одну или несколько полос. Каждая группа может содержать сочетание панели захвата, растрового изображения, текстовой метки и дочернего окна. Группа может содержать только один из этих элементов.

Элемент управления "Перебор" может отображать дочернее окно по указанному фоновому растровом рисунку. Все полосы управления перебары можно изменить, за исключением тех, которые используют стиль RBBS_FIXEDSIZE. При перепозиции или изменении размера полосы управления перебары элемент управления управляет размером и положением дочернего окна, назначенным этому диапазону. Чтобы изменить или изменить порядок полос в элементе управления, щелкните и перетащите панель захвата полосы.

На следующем рисунке показан элемент управления перебары с тремя полосами:

  • Группа 0 содержит неструктурированный, прозрачный элемент управления панели инструментов.

  • Группа 1 содержит как прозрачные стандартные, так и прозрачные кнопки раскрывающегося списка.

  • Группа 2 содержит поле со списком и четыре стандартные кнопки.

    Example of a Rebar menu.

Элемент управления "Перебара"

Поддержка элементов управления перебаре:

  • Списки изображений.

  • Обработка сообщений.

  • Пользовательские функции рисования.

  • Различные стили элементов управления в дополнение к стандартным стилям окон. Список этих стилей см. в статье "Стили элементов управления перебарами" в пакете SDK для Windows.

Дополнительные сведения см. в разделе "Использование CReBarCtrl".

Иерархия наследования

CObject

CCmdTarget

CWnd

CReBarCtrl

Требования

Заголовок: afxcmn.h

CReBarCtrl::BeginDrag

Реализует поведение сообщения Win32 RB_BEGINDRAG, как описано в пакете SDK для Windows.

void BeginDrag(
    UINT uBand,
    DWORD dwPos = (DWORD)-1);

Параметры

uBand
Отсчитываемый от нуля индекс полосы, на который влияет операция перетаскивания.

dwPos
Значение DWORD, содержащее начальные координаты мыши. Горизонтальная координата содержится в LOWORD, а вертикальная координата содержится в HIWORD. Если вы передаете (DWORD)-1, элемент управления rebar будет использовать положение мыши при последнем вызове GetMessage потока элемента управления или PeekMessage.

CReBarCtrl::Create

Создает элемент управления rebar и присоединяет его к объекту CReBarCtrl .

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Параметры

dwStyle
Задает сочетание стилей элементов управления rebar, применяемых к элементу управления. Список поддерживаемых стилей см. в статье "Стили элементов управления перебарами" в пакете SDK для Windows.

rect
Ссылка на объект CRect или структуру RECT , которая представляет собой позицию и размер элемента управления ребарю.

pParentWnd
Указатель на объект CWnd , который является родительским окном элемента управления rebar. Он не должен иметь значение NULL.

Nid
Указывает идентификатор элемента управления rebar.

Возвращаемое значение

Ненулевое значение, если объект был создан успешно; в противном случае — 0.

Замечания

Создайте элемент управления перебары в двух шагах:

  1. Вызовите CReBarCtrl для создания CReBarCtrl объекта.

  2. Вызовите эту функцию-член, которая создает элемент управления перебары Windows и присоединяет его к объекту CReBarCtrl .

При вызове Createобщие элементы управления инициализированы.

Пример

CReBarCtrl *pReBarCtrl = new CReBarCtrl();
CRect rect;
GetWindowRect(rect);
pReBarCtrl->Create(RBS_BANDBORDERS, rect, this, AFX_IDW_REBAR);

// Use ReBar Control.

delete pReBarCtrl;

CReBarCtrl::CreateEx

Создает элемент управления (дочернее окно) и связывает его с CReBarCtrl объектом.

virtual BOOL CreateEx(
    DWORD dwExStyle,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Параметры

dwExStyle
Задает расширенный стиль создаваемого элемента управления. Список расширенных стилей Windows см. в параметре dwExStyle для CreateWindowEx в пакете SDK для Windows.

dwStyle
Задает сочетание стилей элементов управления rebar, применяемых к элементу управления. Список поддерживаемых стилей см. в разделе "Стили элементов управления перебарами" в пакете SDK для Windows.

rect
Ссылка на структуру RECT , описывающую размер и положение создаваемого окна в координатах клиента pParentWnd.

pParentWnd
Указатель на окно, которое является родительским элементом элемента управления.

Nid
Идентификатор дочернего окна элемента управления.

Возвращаемое значение

Имеет ненулевое значение в случае успешного выполнения, иначе — 0.

Замечания

Используйте CreateEx вместо создания расширенные стили Windows, указанные предисловием расширенного стиля Windows WS_EX_.

CReBarCtrl::CReBarCtrl

Создает объект CReBarCtrl.

CReBarCtrl();

Пример

См. пример CReBarCtrl ::Create.

CReBarCtrl::D eleteBand

Реализует поведение сообщения Win32 RB_DELETEBAND, как описано в пакете SDK для Windows.

BOOL DeleteBand(UINT uBand);

Параметры

uBand
Отсчитываемый от нуля индекс полосы.

Возвращаемое значение

Ненулевое значение, если группа успешно удалена; в противном случае ноль.

Пример

UINT nCount = m_wndReBar.GetReBarCtrl().GetBandCount();

if (nCount > 0)
   m_wndReBar.GetReBarCtrl().DeleteBand(nCount - 1);

CReBarCtrl::D ragMove

Реализует поведение сообщения Win32 RB_DRAGMOVE, как описано в пакете SDK для Windows.

void DragMove(DWORD dwPos = (DWORD)-1);

Параметры

dwPos
Значение DWORD, содержащее новые координаты мыши. Горизонтальная координата содержится в LOWORD, а вертикальная координата содержится в HIWORD. Если вы передаете (DWORD)-1, элемент управления rebar будет использовать положение мыши при последнем вызове GetMessage потока элемента управления или PeekMessage.

CReBarCtrl::EndDrag

Реализует поведение сообщения Win32 RB_ENDDRAG, как описано в пакете SDK для Windows.

void EndDrag();

CReBarCtrl::GetBandBorders

Реализует поведение сообщения Win32 RB_GEТБ ANDBORDERS, как описано в пакете SDK для Windows.

void GetBandBorders(
    UINT uBand,
    LPRECT prc) const;

Параметры

uBand
Отсчитываемый от нуля индекс полосы, для которого будут извлечены границы.

Кнр
Указатель на структуру RECT , которая получит границы полосы. Если элемент управления rebar имеет стиль RBS_BANDBORDERS, каждый элемент этой структуры получит количество пикселей на соответствующей стороне полосы, которая представляет собой границу. Если элемент управления rebar не имеет стиля RBS_BANDBORDERS, то только левый элемент этой структуры получает допустимые сведения. Описание стилей элементов управления rebar см. в разделе "Стили элементов управления "Перебар" в пакете SDK для Windows.

CReBarCtrl::GetBandCount

Реализует поведение сообщения Win32 RB_GEТБ ANDCOUNT, как описано в пакете SDK для Windows.

UINT GetBandCount() const;

Возвращаемое значение

Количество полос, назначенных элементу управления.

CReBarCtrl::GetBandInfo

Реализует поведение сообщения Win32 RB_GEТБ ANDINFO, как описано в пакете SDK для Windows.

BOOL GetBandInfo(
    UINT uBand,
    REBARBANDINFO* prbbi) const;

Параметры

uBand
Отсчитываемый от нуля индекс диапазона, для которого будут получены сведения.

prbbi
Указатель на структуру REBARBANDINFO для получения сведений о диапазоне. Перед отправкой этого сообщения необходимо задать cbSize элемент этой структуры sizeof(REBARBANDINFO) и задать fMask его для элементов, которые необходимо получить.

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

CReBarCtrl::GetBandMargins

Извлекает поля группы.

void GetBandMargins(PMARGINS pMargins);

Параметры

pMargins
Указатель на структуру MARGINS, которая получит информацию.

Замечания

Эта функция-член эмулирует функциональные возможности сообщения RB_GEТБ ANDMARGINS, как описано в пакете SDK для Windows.

CReBarCtrl::GetBarHeight

Извлекает высоту панели перекладки.

UINT GetBarHeight() const;

Возвращаемое значение

Значение, представляющее высоту элемента управления в пикселях.

CReBarCtrl::GetBarInfo

Реализует поведение сообщения Win32 RB_GEТБ ARINFO, как описано в пакете SDK для Windows.

BOOL GetBarInfo(REBARINFO* prbi) const;

Параметры

prbi
Указатель на структуру REBARINFO , которая получит сведения об элементе управления перестроением. Перед отправкой этого сообщения необходимо задать для элемента cbSize этой структуры sizeof(REBARINFO) .

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

CReBarCtrl::GetBkColor

Реализует поведение сообщения Win32 RB_GEТБ KCOLOR, как описано в пакете SDK для Windows.

COLORREF GetBkColor() const;

Возвращаемое значение

Значение COLORREF, представляющее текущий цвет фона по умолчанию.

CReBarCtrl::GetColorScheme

Извлекает структуру COLORSCHEME для элемента управления rebar.

BOOL GetColorScheme(COLORSCHEME* lpcs);

Параметры

lpcs
Указатель на структуру COLORSCHEME , как описано в пакете SDK для Windows.

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

Замечания

Структура COLORSCHEME включает цвет выделения кнопки и цвет тени кнопки.

CReBarCtrl::GetDropTarget

Реализует поведение сообщения Win32 RB_GETDROPTARGET, как описано в пакете SDK для Windows.

IDropTarget* GetDropTarget() const;

Возвращаемое значение

Указатель на интерфейс IDropTarget .

CReBarCtrl::GetExtendedStyle

Возвращает расширенные стили текущего элемента управления перебары.

DWORD GetExtendedStyle() const;

Возвращаемое значение

Побитовое сочетание флагов (OR), указывающее расширенные стили. Возможные флаги RBS_EX_SPLITTER и RBS_EX_TRANSPARENT. Дополнительные сведения см. в параметре dwMask метода CReBarCtrl::SetExtendedStyle.

Замечания

Этот метод отправляет сообщение RB_GETEXTENDEDSTYLE , описанное в пакете SDK для Windows.

CReBarCtrl::GetImageList

Возвращает объект, связанный CImageList с элементом управления rebar.

CImageList* GetImageList() const;

Возвращаемое значение

Указатель на объект CImageList . Возвращает значение NULL, если для элемента управления не задан список изображений.

Замечания

Эта функция-член использует сведения о размере и маске, хранящиеся в структуре REBARINFO , как описано в пакете SDK для Windows.

CReBarCtrl::GetPalette

Извлекает текущую палитру элемента управления rebar.

CPalette* GetPalette() const;

Возвращаемое значение

Указатель на объект CPalette, указывающий текущую палитру элемента управления перебары.

Замечания

Обратите внимание, что эта функция-член использует CPalette объект в качестве возвращаемого значения, а не HPALETTE.

Пример

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

Реализует поведение сообщения Win32 RB_GETRECT, как описано в пакете SDK для Windows.

BOOL GetRect(
    UINT uBand,
    LPRECT prc) const;

Параметры

uBand
Отсчитываемый от нуля индекс полосы в элементе управления rebar.

Кнр
Указатель на структуру RECT , которая получит границы полосы перестроения.

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

Пример

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

Реализует поведение сообщения Win32 RB_GETROWCOUNT, как описано в пакете SDK для Windows.

UINT GetRowCount() const;

Возвращаемое значение

Значение UINT, представляющее количество строк полосы в элементе управления.

Пример

UINT nRowCount = m_wndReBar.GetReBarCtrl().GetRowCount();
CString msg;
msg.Format(_T("Row Count is %d"), nRowCount);
AfxMessageBox(msg);

CReBarCtrl::GetRowHeight

Реализует поведение сообщения Win32 RB_GETROWHEIGHT, как описано в пакете SDK для Windows.

UINT GetRowHeight(UINT uRow) const;

Параметры

uRow
Отсчитываемый от нуля индекс полосы, который получит свою высоту.

Возвращаемое значение

Значение UINT, представляющее высоту строки в пикселях.

Пример

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

Реализует поведение RB_GETTEXTCOLOR сообщения Win32, как описано в пакете SDK для Windows.

COLORREF GetTextColor() const;

Возвращаемое значение

Значение COLORREF, представляющее текущий цвет текста по умолчанию.

CReBarCtrl::GetTool Советы

Реализует поведение сообщения Win32 RB_GETTOOLTIPS, как описано в пакете SDK для Windows.

CToolTipCtrl* GetToolTips() const;

Возвращаемое значение

Указатель на объект CToolTipCtrl .

Замечания

Обратите внимание, что реализация GetToolTips MFC возвращает указатель на CToolTipCtrlобъект, а не HWND.

CReBarCtrl::HitTest

Реализует поведение сообщения Win32 RB_HITTEST, как описано в пакете SDK для Windows.

int HitTest(RBHITTESTINFO* prbht);

Параметры

prbht
Указатель на структуру RBHITTESTINFO . Перед отправкой сообщения pt элемент этой структуры необходимо инициализировать до точки, которая будет проверена в координатах клиента.

Возвращаемое значение

Отсчитываемый от нуля индекс полосы в заданной точке или -1, если в точке не было полосы перекладок.

CReBarCtrl::IDToIndex

Реализует поведение сообщения Win32 RB_IDTOINDEX, как описано в пакете SDK для Windows.

int IDToIndex(UINT uBandID) const;

Параметры

uBandID
Определяемый приложением идентификатор указанной полосы, переданный в wID член структуры REBARBANDINFO при вставке полосы.

Возвращаемое значение

Индекс отсчитываемой от нуля полосы при успешном выполнении или -1 в противном случае. Если существуют повторяющиеся индексы полосы, возвращается первый.

CReBarCtrl::InsertBand

Реализует поведение сообщения Win32 RB_INSERТБ AND, как описано в пакете SDK для Windows.

BOOL InsertBand(
    UINT uIndex,
    REBARBANDINFO* prbbi);

Параметры

uIndex
Отсчитываемый от нуля индекс расположения, в котором будет вставлена полоса. Если для этого параметра задано значение -1, элемент управления добавит новую полосу в последнем расположении.

prbbi
Указатель на структуру REBARBANDINFO , определяющую вставленную полосу. Перед вызовом этой функции необходимо задать для элемента cbSize этой структуры sizeof(REBARBANDINFO) .

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

Пример

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

Изменяет размер полосы в элементе управления перебарикой до самого большого размера.

void MaximizeBand(UINT uBand);

Параметры

uBand
Отсчитываемый от нуля индекс полосы.

Замечания

Реализует поведение сообщения Win32 RB_MAXIMIZEBAND с fIdeal установленным значением 0, как описано в пакете SDK для Windows.

Пример

CReBarCtrl& refReBarCtrl = m_wndReBar.GetReBarCtrl();
UINT nCount = refReBarCtrl.GetBandCount();

for (UINT i = 0; i < nCount; i++)
   refReBarCtrl.MaximizeBand(i);   

CReBarCtrl::MinimizeBand

Изменяет размер полосы в элементе управления перестроек до наименьшего размера.

void MinimizeBand(UINT uBand);

Параметры

uBand
Отсчитываемый от нуля индекс полосы, который необходимо свести к минимуму.

Замечания

Реализует поведение RB_MINIMIZEBAND сообщения Win32, как описано в пакете SDK для Windows.

Пример

CReBarCtrl &refReBarCtrl = m_wndReBar.GetReBarCtrl();
UINT nCount = refReBarCtrl.GetBandCount();

for (UINT i = 0; i < nCount; i++)
   refReBarCtrl.MinimizeBand(i);

CReBarCtrl::MoveBand

Реализует поведение RB_MOVEBAND сообщения Win32, как описано в пакете SDK для Windows.

BOOL MoveBand(
    UINT uFrom,
    UINT uTo);

Параметры

uFrom
Отсчитываемый от нуля индекс перемещаемой полосы.

Ото
Отсчитываемый от нуля индекс новой позиции полосы. Это значение параметра никогда не должно быть больше числа полос минус один. Чтобы получить количество полос, вызовите GetBandCount.

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

CReBarCtrl::P ushChevron

Реализует поведение сообщения Win32 RB_PUSHCHEVRON, как описано в пакете SDK для Windows.

void PushChevron(
    UINT uBand,
    LPARAM lAppValue);

Параметры

uBand
Отсчитываемый от нуля индекс группы, шеврон которого необходимо отправить.

lAppValue
Приложение, определенное 32-разрядное значение. См . статью lAppValue в RB_PUSHCHEVRON в пакете SDK для Windows.

CReBarCtrl::RestoreBand

Изменяет размер полосы в элементе управления ребарю до его идеального размера.

void RestoreBand(UINT uBand);

Параметры

uBand
Отсчитываемый от нуля индекс полосы.

Замечания

Реализует поведение сообщения Win32, RB_MAXIMIZEBAND с fIdeal установленным значением 1, как описано в пакете SDK для Windows.

Пример

CReBarCtrl &refReBarCtrl = m_wndReBar.GetReBarCtrl();
UINT nCount = refReBarCtrl.GetBandCount();

for (UINT i = 0; i < nCount; i++)
   refReBarCtrl.RestoreBand(i);

CReBarCtrl::SetBandInfo

Реализует поведение сообщения Win32 RB_SEТБ ANDINFO, как описано в пакете SDK для Windows.

BOOL SetBandInfo(
    UINT uBand,
    REBARBANDINFO* prbbi);

Параметры

uBand
Отсчитываемый от нуля индекс полосы для получения новых параметров.

prbbi
Указатель на структуру REBARBANDINFO , определяющую вставленную полосу. Перед отправкой cbSize этого сообщения необходимо задать элемент этой структуры sizeof(REBARBANDINFO) .

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

Пример

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

Задает ширину указанной закрепленной полосы в текущем элементе управления перебары.

BOOL SetBandWidth(
    UINT uBand,
    int cxWidth);

Параметры

uBand
[in] Отсчитываемый от нуля индекс полосы перекладки.

cxWidth
[in] Новая ширина полосы перекладки в пикселях.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если метод выполнен успешно; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

Этот метод отправляет сообщение RB_SEТБ ANDWIDTH, описанное в пакете SDK для Windows.

Пример

Первый пример кода определяет переменную, m_rebarкоторая используется для доступа к текущему элементу управления перебары. Эта переменная используется в следующем примере.

public:
CReBarCtrl m_rebar;
BOOL bRet;
static const int TOTAL_BANDS = 5;
static const int BUFFER_SIZE = 10;

Следующий пример кода задает для каждой полосы перевязки одинаковую ширину.

// 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

Реализует поведение сообщения Win32 RB_SEТБ ARINFO, как описано в пакете SDK для Windows.

BOOL SetBarInfo(REBARINFO* prbi);

Параметры

prbi
Указатель на структуру REBARINFO , содержащую заданные сведения. Перед отправкой этого сообщения необходимо задать cbSize элемент этой структуры.sizeof(REBARINFO)

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

Пример

REBARINFO rbi = {0};
rbi.cbSize = sizeof(REBARINFO);
rbi.fMask = 0;
rbi.himl = 0;
m_wndReBar.GetReBarCtrl().SetBarInfo(&rbi);

CReBarCtrl::SetBkColor

Реализует поведение сообщения Win32 RB_SEТБ KCOLOR, как описано в пакете SDK для Windows.

COLORREF SetBkColor(COLORREF clr);

Параметры

clr
Значение COLORREF, представляющее новый цвет фона по умолчанию.

Возвращаемое значение

Значение COLORREF , представляющее предыдущий цвет фона по умолчанию.

Замечания

Дополнительные сведения о настройке цвета фона и настройке по умолчанию см. в этом разделе.

CReBarCtrl::SetColorScheme

Задает цветовую схему для кнопок на панели управления.

void SetColorScheme(const COLORSCHEME* lpcs);

Параметры

lpcs
Указатель на структуру COLORSCHEME , как описано в пакете SDK для Windows.

Замечания

Структура COLORSCHEME включает цвет выделения кнопки и цвет тени кнопки.

CReBarCtrl::SetExtendedStyle

Задает расширенные стили для текущего элемента управления перебары.

DWORD SetExtendedStyle(
    DWORD dwMask,
    DWORD dwStyleEx);

Параметры

dwMask
[in] Побитовое сочетание флагов (OR), указывающее, какие флаги применяются в параметре dwStyleEx . Используйте одно или несколько следующих значений:

  • RBS_EX_SPLITTER: по умолчанию отображается разделитель внизу в горизонтальном режиме и справа в вертикальном режиме.
  • RBS_EX_TRANSPARENT: перенаправите сообщение WM_ERASEBKGND в родительское окно.

dwStyleEx
[in] Побитовое сочетание флагов (OR), указывающее стили для применения. Чтобы задать стиль, укажите тот же флаг, который используется в параметре dwMask . Чтобы сбросить стиль, укажите двоичный ноль.

Возвращаемое значение

Предыдущий расширенный стиль.

Замечания

Этот метод отправляет сообщение RB_SETEXTENDEDSTYLE , описанное в пакете SDK для Windows.

CReBarCtrl::SetImageList

Назначает список изображений элементу управления перебары.

BOOL SetImageList(CImageList* pImageList);

Параметры

pImageList
Указатель на объект CImageList , содержащий список изображений, назначенный элементу управления перебары.

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

CReBarCtrl::SetOwner

Реализует поведение сообщения Win32 RB_SETPARENT, как описано в пакете SDK для Windows.

CWnd* SetOwner(CWnd* pWnd);

Параметры

pWnd
Указатель на объект, заданный CWnd как владелец элемента управления перестроения.

Возвращаемое значение

Указатель на объект CWnd , который является текущим владельцем элемента управления перекладки.

Замечания

Обратите внимание, что эта функция-член использует указатели на CWnd объекты как для текущего, так и выбранного владельца элемента управления перекладки, а не дескрипторов в окнах.

Примечание.

Эта функция-член не изменяет фактический родительский объект, заданный при создании элемента управления; скорее он отправляет сообщения уведомления в указанное окно.

CReBarCtrl::SetPalette

Реализует поведение сообщения Win32 RB_SETPALETTE, как описано в пакете SDK для Windows.

CPalette* SetPalette(HPALETTE hPal);

Параметры

hPal
HpALETTE, указывающий новую палитру, которую будет использовать элемент управления перебары.

Возвращаемое значение

Указатель на объект CPalette, указывающий предыдущую палитру элемента управления перебары.

Замечания

Обратите внимание, что эта функция-член использует CPalette объект в качестве возвращаемого значения, а не HPALETTE.

CReBarCtrl::SetTextColor

Реализует поведение сообщения Win32 RB_SETTEXTCOLOR, как описано в пакете SDK для Windows.

COLORREF SetTextColor(COLORREF clr);

Параметры

clr
Значение COLORREF, представляющее новый цвет текста в объекте CReBarCtrl .

Возвращаемое значение

Значение COLORREF , представляющее предыдущий цвет текста, связанный CReBarCtrl с объектом.

Замечания

Она предоставляется для поддержки гибкости цвета текста в элементе управления перекладиной.

CReBarCtrl::SetTool Советы

Связывает элемент управления подсказки средства с элементом управления перекладиной.

void SetToolTips(CToolTipCtrl* pToolTip);

Параметры

pToolTip
Указатель на объект CToolTipCtrl

Замечания

При завершении работы с ним необходимо уничтожить CToolTipCtrl объект.

CReBarCtrl::SetWindowTheme

Задает визуальный стиль элемента управления rebar.

HRESULT SetWindowTheme(LPCWSTR pszSubAppName);

Параметры

pszSubAppName
Указатель на строку Юникода, содержащую заданный визуальный стиль панели.

Возвращаемое значение

Возвращаемое значение не используется.

Замечания

Эта функция-член эмулирует функциональные возможности сообщения RB_SETWINDOWTHEME , как описано в пакете SDK для Windows.

CReBarCtrl::ShowBand

Реализует поведение сообщения Win32 RB_SHOWBAND, как описано в пакете SDK для Windows.

BOOL ShowBand(
    UINT uBand,
    BOOL fShow = TRUE);

Параметры

uBand
Отсчитываемый от нуля индекс полосы в элементе управления rebar.

fShow
Указывает, должен ли полоса отображаться или скрыта. Если это значение равно TRUE, будет отображаться полоса. В противном случае группа будет скрыта.

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

CReBarCtrl::SizeToRect

Реализует поведение сообщения Win32 RB_SIZETORECT, как описано в пакете SDK для Windows.

BOOL SizeToRect(CRect& rect);

Параметры

rect
Ссылка на объект CRect, указывающий прямоугольник, в котором должен быть размер элемента управления перебары.

Возвращаемое значение

Ненулевое значение в случае успеха, иначе — 0.

Замечания

Обратите внимание, что эта функция-член использует CRect объект в качестве параметра, а не структуру RECT .

См. также

Класс CWnd
Диаграмма иерархии