Compartilhar via


Classe CReBar

Uma barra de controle que fornece informações de layout, persistência e estado para controles rebar.

Sintaxe

class CReBar : public CControlBar

Membros

Métodos públicos

Nome Descrição
CReBar::AddBar Adiciona uma banda a um rebar.
CReBar::Create Cria o controle rebar e o anexa ao objeto CReBar.
CReBar::GetReBarCtrl Permite acesso direto ao controle comum subjacente.

Comentários

Um objeto rebar pode conter uma variedade de janelas filho, geralmente outros controles, incluindo caixas de edição, barras de ferramentas e caixas de listagem. Um objeto rebar pode exibir suas janelas filho em um bitmap especificado. O aplicativo pode redimensionar automaticamente o rebar ou o usuário pode redimensionar manualmente o rebar clicando ou arrastando sua barra de garra.

Exemplo de RebarMenu.

Controle rebar

Um objeto rebar se comporta de maneira semelhante a um objeto de barra de ferramentas. Um rebar usa o mecanismo de clicar e arrastar para redimensionar suas bandas. Um controle rebar pode conter uma ou mais bandas, com cada banda tendo qualquer combinação de uma barra de garra, um bitmap, um rótulo de texto e uma janela filho. No entanto, as bandas não podem conter mais de uma janela filho.

CReBar usa a classe CReBarCtrl para fornecer sua implementação. Você pode acessar o controle rebar por meio de GetReBarCtrl para aproveitar as opções de personalização do controle. Para saber mais sobre controles rebar, confira CReBarCtrl. Para obter mais informações sobre como usar controles rebar, consulte Usar CReBarCtrl.

Cuidado

Objetos de controle rebar não dão suporte ao encaixe da barra de controle do MFC. Se CRebar::EnableDocking for chamado, o aplicativo declarará.

Hierarquia de herança

CObject

CCmdTarget

CWnd

CControlBar

CReBar

Requisitos

Cabeçalho: afxext.h

CReBar::AddBar

Chame essa função membro para adicionar uma banda ao controle rebar.

BOOL AddBar(
    CWnd* pBar,
    LPCTSTR pszText = NULL,
    CBitmap* pbmp = NULL,
    DWORD dwStyle = RBBS_GRIPPERALWAYS | RBBS_FIXEDBMP);

BOOL AddBar(
    CWnd* pBar,
    COLORREF clrFore,
    COLORREF clrBack,
    LPCTSTR pszText = NULL,
    DWORD dwStyle = RBBS_GRIPPERALWAYS);

Parâmetros

pBar
Um ponteiro para um objeto CWnd que é a janela filho a ser inserida no controle rebar. O objeto referenciado deve ter um WS_CHILD.

lpszTexto
Um ponteiro para uma cadeia de caracteres que contém o texto a ser exibido no controle rebar. NULL por padrão. O texto contido em lpszText não faz parte da janela filho, pois está no próprio controle rebar.

pbmp
Um ponteiro para um objeto CBitmap a ser exibido no plano de fundo do controle rebar. NULL por padrão.

dwStyle
Um DWORD que contém o estilo a ser aplicado ao controle rebar. Confira a descrição da função fStyle na estrutura Win32 REBARBANDINFO para ver uma lista completa de estilos de banda.

clrFore
Um valor COLORREF que representa a cor de primeiro plano do controle rebar.

clrBack
Um valor COLORREF que representa a cor da tela de fundo do controle rebar.

Valor de retorno

Diferente de zero se tiver êxito; caso contrário, 0.

Exemplo

// Define a CRebar in your class definition,
// such as: CReBar m_wndReBar;
m_wndReBar.Create(this);
m_wndDlgBar.Create(this, IDD_DIALOGBAR, CBRS_ALIGN_TOP,
                   IDD_DIALOGBAR);
m_wndReBar.AddBar(&m_wndDlgBar);

CReBar::Create

Chame essa função membro para criar uma controle rebar.

virtual BOOL Create(
    CWnd* pParentWnd,
    DWORD dwCtrlStyle = RBS_BANDBORDERS,
    DWORD dwStyle = WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_TOP,
    UINT nID = AFX_IDW_REBAR);

Parâmetros

pParentWnd
Ponteiro para o objeto CWnd cuja janela do Windows é o pai da barra de status. Normalmente, a janela de quadro.

dwCtrlStyle
O estilo do controle rebar. Por padrão, RBS_BANDBORDERS, que exibe linhas estreitas para separar bandas adjacentes dentro do controle rebar. Consulte Estilos de Controle Rebar no SDK do Windows para obter uma lista de estilos.

dwStyle
Os estilos de janela do controle rebar.

Nid
A ID da janela filho do controle rebar.

Valor de retorno

Diferente de zero se tiver êxito; caso contrário, 0.

Exemplo

Consulte o exemplo de CReBar::AddBar.

CReBar::GetReBarCtrl

Essa função de membro permite acesso direto ao controle comum subjacente.

CReBarCtrl& GetReBarCtrl() const;

Valor de retorno

Uma referência a um objeto CReBarCtrl.

Comentários

Chame essa função membro para aproveitar a funcionalidade do controle rebar comum do Windows ao personalizar o controle rebar. Quando você chama GetReBarCtrl, ele retorna uma referência ao objeto CReBarCtrl para possibilitar o uso de qualquer conjunto de funções membro.

Para obter mais informações sobre como usar CReBarCtrl para personalizar seu controle rebar, consulte Usar CReBarCtrl.

Exemplo

CReBarCtrl &refReBarCtrl = m_wndReBar.GetReBarCtrl();

UINT nBandCount = refReBarCtrl.GetBandCount();
CString msg;
msg.Format(_T("Band Count is: %u"), nBandCount);
AfxMessageBox(msg);

Confira também

MFCIE de exemplo do MFC
Classe CControlBar
Gráfico da hierarquia