Partilhar via


Classe CReBarCtrl

Encapsula a funcionalidade de um controle de vergalhão, que é um contêiner para uma janela filho.

Sintaxe

class CReBarCtrl : public CWnd

Membros

Construtores Públicos

Nome Descrição
CReBarCtrl::CReBarCtrl Constrói um objeto CReBarCtrl.

Métodos Públicos

Nome Descrição
CReBarCtrl::BeginDrag Coloca o controle de vergalhão no modo de arrastar e soltar.
CReBarCtrl::Criar Cria o controle de vergalhão e o anexa ao CReBarCtrl objeto.
CReBarCtrl::CreateEx Cria um controle de vergalhão com os estilos estendidos especificados do Windows e o anexa a um CReBarCtrl objeto.
CReBarCtrl::D eleteBand Exclui uma banda de um controle de vergalhão.
CReBarCtrl::D ragMove Atualiza a posição de arrasto no controle de vergalhão após uma chamada para BeginDrag.
CReBarCtrl::EndDrag Encerra a operação de arrastar e soltar do controle de vergalhão.
CReBarCtrl::GetBandBorders Recupera as bordas de uma banda.
CReBarCtrl::GetBandCount Recupera a contagem de bandas atualmente no controle de vergalhão.
CReBarCtrl::GetBandInfo Recupera informações sobre uma banda especificada em um controle de vergalhão.
CReBarCtrl::GetBandMargins Recupera as margens de uma banda.
CReBarCtrl::GetBarHeight Recupera a altura do controle de vergalhão.
CReBarCtrl::GetBarInfo Recupera informações sobre o controle de vergalhão e a lista de imagens que ele usa.
CReBarCtrl::GetBkColor Recupera a cor de plano de fundo padrão de um controle de vergalhão.
CReBarCtrl::GetColorScheme Recupera a estrutura COLORSCHEME associada ao controle de vergalhão.
CReBarCtrl::GetDropTarget Recupera o ponteiro da interface de um controle de vergalhão IDropTarget .
CReBarCtrl::GetExtendedStyle Obtém o estilo estendido do controle de vergalhão atual.
CReBarCtrl::GetImageList Recupera a lista de imagens associada a um controle de vergalhão.
CReBarCtrl::GetPalette Recupera a paleta atual do controle de vergalhão.
CReBarCtrl::GetRect Recupera o retângulo delimitador de uma determinada banda em um controle de vergalhão.
CReBarCtrl::GetRowCount Recupera o número de linhas de banda em um controle de vergalhão.
CReBarCtrl::GetRowHeight Recupera a altura de uma linha especificada em um controle de vergalhão.
CReBarCtrl::GetTextColor Recupera a cor de texto padrão de um controle de vergalhão.
CReBarCtrl::GetToolTips Recupera o identificador para qualquer controle de dica de ferramenta associado ao controle de vergalhão.
CReBarCtrl::HitTest Determina qual parte de uma banda de vergalhão está em um determinado ponto da tela, se existir uma banda de vergalhão nesse ponto.
CReBarCtrl::IDToIndex Converte um identificador de banda (ID) em um índice de banda em um controle de vergalhão.
CReBarCtrl::InsertBand Insere uma nova banda em um controle de vergalhão.
CReBarCtrl::MaximizeBand Redimensiona uma banda em um controle de vergalhão para seu maior tamanho.
CReBarCtrl::MinimizeBand Redimensiona uma banda em um controle de vergalhão para seu menor tamanho.
CReBarCtrl::MoveBand Move uma banda de um índice para outro.
CReBarCtrl::P ushChevron Empurra programaticamente uma divisa.
CReBarCtrl::RestoreBand Redimensiona uma banda em um controle de vergalhão para seu tamanho ideal.
CReBarCtrl::SetBandInfo Define as características de uma banda existente em um controle de vergalhão.
CReBarCtrl::SetBandWidth Define a largura da banda encaixada especificada no controle de vergalhão atual.
CReBarCtrl::SetBarInfo Define as características de um controle de vergalhão.
CReBarCtrl::SetBkColor Define a cor de plano de fundo padrão de um controle de vergalhão.
CReBarCtrl::SetColorScheme Define o esquema de cores para os botões em um controle de vergalhão.
CReBarCtrl::SetExtendedStyle Define os estilos estendidos para o controle de vergalhão atual.
CReBarCtrl::SetImageList Define a lista de imagens de um controle de vergalhão.
CReBarCtrl::SetOwner Define a janela do proprietário de um controle de vergalhão.
CReBarCtrl::SetPalette Define a paleta atual do controle de vergalhão.
CReBarCtrl::SetTextColor Define a cor de texto padrão de um controle de vergalhão.
CReBarCtrl::SetToolTips Associa um controle de ponta de ferramenta ao controle de vergalhão.
CReBarCtrl::SetWindowTheme Define o estilo visual do controle de vergalhão.
CReBarCtrl::ShowBand Mostra ou oculta uma determinada banda em um controle de vergalhão.
CReBarCtrl::SizeToRect Encaixa um controle de vergalhão em um retângulo especificado.

Observações

O aplicativo no qual o controle de vergalhão reside atribui a janela filho contida pelo controle de vergalhão à banda de vergalhão. A janela da criança é geralmente outro controle comum.

Os controles de vergalhão contêm uma ou mais bandas. Cada banda pode conter uma combinação de uma barra de garra, um bitmap, um rótulo de texto e uma janela filho. A banda pode conter apenas um de cada um desses itens.

O controle de vergalhão pode exibir a janela filho sobre um bitmap de plano de fundo especificado. Todas as bandas de controle do vergalhão podem ser redimensionadas, exceto aquelas que usam o estilo RBBS_FIXEDSIZE. À medida que você reposiciona ou redimensiona uma banda de controle de vergalhão, o controle de vergalhão gerencia o tamanho e a posição da janela filho atribuída a essa banda. Para redimensionar ou alterar a ordem das bandas dentro do controle, clique e arraste a barra de manipulação de uma banda.

A ilustração a seguir mostra um controle de vergalhão que tem três bandas:

  • A banda 0 contém um controle de barra de ferramentas plano e transparente.

  • A banda 1 contém botões suspensos transparentes padrão e transparentes.

  • A banda 2 contém uma caixa de combinação e quatro botões padrão.

    Exemplo de um menu Vergalhão.

Controlo do vergalhão

Suporte para controles de vergalhão:

  • Listas de imagens.

  • Tratamento de mensagens.

  • Funcionalidade de desenho personalizado.

  • Uma variedade de estilos de controle, além de estilos de janela padrão. Para obter uma lista desses estilos, consulte Estilos de controle de vergalhão no SDK do Windows.

Para obter mais informações, consulte Usando CReBarCtrl.

Hierarquia de herança

CObject

CCmdTarget

CWnd

CReBarCtrl

Requerimentos

Cabeçalho: afxcmn.h

CReBarCtrl::BeginDrag

Implementa o comportamento do RB_BEGINDRAG de mensagens Win32, conforme descrito no SDK do Windows.

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

Parâmetros

uBand
Índice baseado em zero da banda que a operação de arrastar e soltar afetará.

dwPos
Um valor DWORD que contém as coordenadas iniciais do mouse. A coordenada horizontal está contida no LOWORD e a coordenada vertical está contida no HIWORD. Se você passar (DWORD)-1, o controle de vergalhão usará a posição do mouse na última vez que o thread do controle for chamado GetMessage ou PeekMessage.

CReBarCtrl::Criar

Cria o controle de vergalhão e o anexa ao CReBarCtrl objeto.

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

Parâmetros

dwStyle
Especifica a combinação de estilos de controle de vergalhão aplicados ao controle. Consulte Estilos de controle de vergalhão no SDK do Windows para obter uma lista de estilos suportados.

retângulo
Uma referência a um objeto CRect ou estrutura RECT , que é a posição e o tamanho do controle de vergalhão.

pParentWnd
Um ponteiro para um objeto CWnd que é a janela pai do controle de vergalhão. Não deve ser NULL.

nID
Especifica a ID de controle do controle de vergalhão.

Valor de retorno

Diferente de zero se o objeto foi criado com êxito; caso contrário, 0.

Observações

Crie um controle de vergalhão em duas etapas:

  1. Chame CReBarCtrl para construir um CReBarCtrl objeto.

  2. Chame essa função de membro, que cria o controle de vergalhão do Windows e o anexa ao CReBarCtrl objeto.

Quando você chama Createo , os controles comuns são inicializados.

Exemplo

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

// Use ReBar Control.

delete pReBarCtrl;

CReBarCtrl::CreateEx

Cria um controle (uma janela filho) e o associa ao objeto CReBarCtrl.

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

Parâmetros

dwExStyle
Especifica o estilo estendido do controle que está sendo criado. Para obter uma lista de estilos estendidos do Windows, consulte o parâmetro dwExStyle para CreateWindowEx no SDK do Windows.

dwStyle
Especifica a combinação de estilos de controle de vergalhão aplicados ao controle. Para obter uma lista de estilos suportados, consulte Estilos de controle de vergalhão no SDK do Windows.

retângulo
Uma referência a uma estrutura de RECT que descreve o tamanho e a posição da janela a ser criada, nas coordenadas do cliente de pParentWnd.

pParentWnd
Um ponteiro para a janela que é o pai do controle.

nID
ID da janela filho do controle.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, 0.

Observações

Use CreateEx em vez de Criar para aplicar estilos estendidos do Windows, especificados pela WS_EX_ de prefácio de estilo estendido do Windows.

CReBarCtrl::CReBarCtrl

Cria um objeto CReBarCtrl.

CReBarCtrl();

Exemplo

Veja o exemplo de CReBarCtrl::Create.

CReBarCtrl::D eleteBand

Implementa o comportamento do RB_DELETEBAND de mensagens Win32, conforme descrito no SDK do Windows.

BOOL DeleteBand(UINT uBand);

Parâmetros

uBand
Índice baseado em zero da banda a ser excluída.

Valor de retorno

Diferente de zero se a banda for excluída com êxito; caso contrário, zero.

Exemplo

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

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

CReBarCtrl::D ragMove

Implementa o comportamento do RB_DRAGMOVE de mensagens Win32, conforme descrito no SDK do Windows.

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

Parâmetros

dwPos
Um valor DWORD que contém as novas coordenadas do mouse. A coordenada horizontal está contida no LOWORD e a coordenada vertical está contida no HIWORD. Se você passar (DWORD)-1, o controle de vergalhão usará a posição do mouse na última vez que o thread do controle for chamado GetMessage ou PeekMessage.

CReBarCtrl::EndDrag

Implementa o comportamento do RB_ENDDRAG de mensagens do Win32, conforme descrito no SDK do Windows.

void EndDrag();

CReBarCtrl::GetBandBorders

Implementa o comportamento da mensagem Win32 RB_GETBANDBORDERS, conforme descrito no SDK do Windows.

void GetBandBorders(
    UINT uBand,
    LPRECT prc) const;

Parâmetros

uBand
Índice baseado em zero da banda para a qual as bordas serão recuperadas.

RPC
Um ponteiro para uma estrutura RECT que receberá as bordas da banda. Se o controle de vergalhão tiver o estilo RBS_BANDBORDERS, cada membro dessa estrutura receberá o número de pixels, no lado correspondente da banda, que constituem a borda. Se o controle de vergalhão não tiver o estilo RBS_BANDBORDERS, somente o membro esquerdo dessa estrutura receberá informações válidas. Para obter uma descrição dos estilos de controle de vergalhão, consulte Estilos de controle de vergalhão no SDK do Windows.

CReBarCtrl::GetBandCount

Implementa o comportamento da mensagem Win32 RB_GETBANDCOUNT, conforme descrito no SDK do Windows.

UINT GetBandCount() const;

Valor de retorno

O número de bandas atribuídas ao controle.

CReBarCtrl::GetBandInfo

Implementa o comportamento do RB_GETBANDINFO de mensagens Win32 conforme descrito no SDK do Windows.

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

Parâmetros

uBand
Índice baseado em zero da banda para a qual a informação será recuperada.

PRBBI
Um ponteiro para uma estrutura REBARBANDINFO para receber as informações da banda. Você deve definir o cbSize membro dessa estrutura como sizeof(REBARBANDINFO) e definir o fMask membro para os itens que deseja recuperar antes de enviar esta mensagem.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

CReBarCtrl::GetBandMargins

Recupera as margens da banda.

void GetBandMargins(PMARGINS pMargins);

Parâmetros

pMargens
Um ponteiro para uma estrutura MARGINS que receberá as informações.

Observações

Essa função de membro emula a funcionalidade da mensagem RB_GETBANDMARGINS , conforme descrito no SDK do Windows.

CReBarCtrl::GetBarHeight

Recupera a altura do vergalhão.

UINT GetBarHeight() const;

Valor de retorno

Valor que representa a altura, em pixels, do controle.

CReBarCtrl::GetBarInfo

Implementa o comportamento do RB_GETBARINFO de mensagens do Win32, conforme descrito no SDK do Windows.

BOOL GetBarInfo(REBARINFO* prbi) const;

Parâmetros

PRBI
Um ponteiro para uma estrutura REBARINFO que receberá as informações de controle do vergalhão. Você deve definir o membro cbSize dessa estrutura como sizeof(REBARINFO) antes de enviar esta mensagem.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

CReBarCtrl::GetBkColor

Implementa o comportamento do RB_GETBKCOLOR de mensagens do Win32, conforme descrito no SDK do Windows.

COLORREF GetBkColor() const;

Valor de retorno

Um valor COLORREF que representa a cor de plano de fundo padrão atual.

CReBarCtrl::GetColorScheme

Recupera a estrutura COLORSCHEME para o controle de vergalhão.

BOOL GetColorScheme(COLORSCHEME* lpcs);

Parâmetros

LPCs
Um ponteiro para uma estrutura COLORSCHEME , conforme descrito no SDK do Windows.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

Observações

A COLORSCHEME estrutura inclui a cor de realce do botão e a cor da sombra do botão.

CReBarCtrl::GetDropTarget

Implementa o comportamento do RB_GETDROPTARGET de mensagens do Win32, conforme descrito no SDK do Windows.

IDropTarget* GetDropTarget() const;

Valor de retorno

Um ponteiro para uma interface IDropTarget .

CReBarCtrl::GetExtendedStyle

Obtém os estilos estendidos do controle de vergalhão atual.

DWORD GetExtendedStyle() const;

Valor de retorno

Uma combinação bit a bit (OR) de sinalizadores que indicam os estilos estendidos. As bandeiras possíveis são RBS_EX_SPLITTER e RBS_EX_TRANSPARENT. Para obter mais informações, consulte o parâmetro dwMask do método CReBarCtrl::SetExtendedStyle .

Observações

Esse método envia a mensagem RB_GETEXTENDEDSTYLE , que é descrita no SDK do Windows.

CReBarCtrl::GetImageList

Obtém o objeto associado a CImageList um controle de vergalhão.

CImageList* GetImageList() const;

Valor de retorno

Um ponteiro para um objeto CImageList . Retorna NULL se nenhuma lista de imagens estiver definida para o controle.

Observações

Essa função de membro usa informações de tamanho e máscara armazenadas na estrutura REBARINFO , conforme descrito no SDK do Windows.

CReBarCtrl::GetPalette

Recupera a paleta atual do controle de vergalhão.

CPalette* GetPalette() const;

Valor de retorno

Um ponteiro para um objeto CPalette especificando a paleta atual do controle de vergalhão.

Observações

Observe que essa função de membro usa um CPalette objeto como seu valor de retorno, em vez de um HPALETTE.

Exemplo

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

Implementa o comportamento do RB_GETRECT de mensagens Win32, conforme descrito no SDK do Windows.

BOOL GetRect(
    UINT uBand,
    LPRECT prc) const;

Parâmetros

uBand
Índice baseado em zero de uma banda no controle de vergalhão.

RPC
Um ponteiro para uma estrutura RECT que receberá os limites da banda de vergalhão.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

Exemplo

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

Implementa o comportamento do RB_GETROWCOUNT de mensagens do Win32, conforme descrito no SDK do Windows.

UINT GetRowCount() const;

Valor de retorno

Um valor UINT que representa o número de linhas de banda no controle.

Exemplo

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

CReBarCtrl::GetRowHeight

Implementa o comportamento do RB_GETROWHEIGHT de mensagens do Win32, conforme descrito no SDK do Windows.

UINT GetRowHeight(UINT uRow) const;

Parâmetros

uRow
Índice baseado em zero da banda que terá sua altura recuperada.

Valor de retorno

Um valor UINT que representa a altura da linha, em pixels.

Exemplo

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

Implementa o comportamento do RB_GETTEXTCOLOR de mensagens Win32, conforme descrito no SDK do Windows.

COLORREF GetTextColor() const;

Valor de retorno

Um valor COLORREF que representa a cor de texto padrão atual.

CReBarCtrl::GetToolTips

Implementa o comportamento da mensagem Win32 RB_GETTOOLTIPS, conforme descrito no SDK do Windows.

CToolTipCtrl* GetToolTips() const;

Valor de retorno

Um ponteiro para um objeto CToolTipCtrl .

Observações

Observe que a implementação MFC de retorna um ponteiro para um GetToolTips, em vez de CToolTipCtrl um HWND.

CReBarCtrl::HitTest

Implementa o comportamento do RB_HITTEST de mensagens Win32, conforme descrito no SDK do Windows.

int HitTest(RBHITTESTINFO* prbht);

Parâmetros

PRBHT
Um ponteiro para uma estrutura RBHITTESTINFO . Antes de enviar a mensagem, o pt membro desta estrutura deve ser inicializado até o ponto que será testado, nas coordenadas do cliente.

Valor de retorno

O índice baseado em zero da banda no ponto determinado, ou -1 se nenhuma banda de vergalhão estivesse no ponto.

CReBarCtrl::IDToIndex

Implementa o comportamento da mensagem Win32 RB_IDTOINDEX, conforme descrito no SDK do Windows.

int IDToIndex(UINT uBandID) const;

Parâmetros

uBandID
O identificador definido pelo aplicativo da banda especificada, passado no wID membro da estrutura REBARBANDINFO quando a banda é inserida.

Valor de retorno

O índice de banda baseado em zero, se bem-sucedido, ou -1 de outra forma. Se existirem índices de banda duplicados, o primeiro será retornado.

CReBarCtrl::InsertBand

Implementa o comportamento do RB_INSERTBAND de mensagens do Win32, conforme descrito no SDK do Windows.

BOOL InsertBand(
    UINT uIndex,
    REBARBANDINFO* prbbi);

Parâmetros

uÍndice
Índice baseado em zero do local onde a banda será inserida. Se você definir esse parâmetro como -1, o controle adicionará a nova banda no último local.

PRBBI
Um ponteiro para uma estrutura REBARBANDINFO que define a banda a ser inserida. Você deve definir o membro cbSize dessa estrutura como sizeof(REBARBANDINFO) antes de chamar essa função.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

Exemplo

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

Redimensiona uma banda em um controle de vergalhão para seu maior tamanho.

void MaximizeBand(UINT uBand);

Parâmetros

uBand
Índice baseado em zero da banda a ser maximizado.

Observações

Implementa o comportamento da mensagem Win32 RB_MAXIMIZEBAND com fIdeal definido como 0, conforme descrito no SDK do Windows.

Exemplo

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

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

CReBarCtrl::MinimizeBand

Redimensiona uma banda em um controle de vergalhão para seu menor tamanho.

void MinimizeBand(UINT uBand);

Parâmetros

uBand
Índice baseado em zero da banda a ser minimizado.

Observações

Implementa o comportamento do RB_MINIMIZEBAND de mensagens Win32, conforme descrito no SDK do Windows.

Exemplo

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

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

CReBarCtrl::MoveBand

Implementa o comportamento do RB_MOVEBAND de mensagens Win32, conforme descrito no SDK do Windows.

BOOL MoveBand(
    UINT uFrom,
    UINT uTo);

Parâmetros

uDe
Índice baseado em zero da banda a ser movida.

uTo
Índice baseado em zero da nova posição da banda. Este valor de parâmetro nunca deve ser maior do que o número de bandas menos um. Para obter o número de bandas, chame GetBandCount.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

CReBarCtrl::P ushChevron

Implementa o comportamento do RB_PUSHCHEVRON de mensagens Win32, conforme descrito no SDK do Windows.

void PushChevron(
    UINT uBand,
    LPARAM lAppValue);

Parâmetros

uBand
Índice baseado em zero da banda cuja divisa deve ser empurrada.

lAppValue
Um aplicativo definiu o valor de 32 bits. Consulte lAppValue em RB_PUSHCHEVRON no SDK do Windows.

CReBarCtrl::RestoreBand

Redimensiona uma banda em um controle de vergalhão para seu tamanho ideal.

void RestoreBand(UINT uBand);

Parâmetros

uBand
Índice baseado em zero da banda a ser maximizado.

Observações

Implementa o comportamento da mensagem Win32 RB_MAXIMIZEBAND com fIdeal definido como 1, conforme descrito no SDK do Windows.

Exemplo

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

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

CReBarCtrl::SetBandInfo

Implementa o comportamento do RB_SETBANDINFO de mensagens Win32, conforme descrito no SDK do Windows.

BOOL SetBandInfo(
    UINT uBand,
    REBARBANDINFO* prbbi);

Parâmetros

uBand
Índice baseado em zero da banda para receber as novas configurações.

PRBBI
Ponteiro para uma estrutura REBARBANDINFO que define a banda a ser inserida. Você deve definir o cbSize membro dessa estrutura como sizeof(REBARBANDINFO) antes de enviar esta mensagem.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

Exemplo

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

Define a largura da banda encaixada especificada no controle de vergalhão atual.

BOOL SetBandWidth(
    UINT uBand,
    int cxWidth);

Parâmetros

uBand
[em] Índice baseado em zero de uma banda de vergalhões.

cxLargura
[em] Nova largura da banda do vergalhão, em pixels.

Valor de retorno

TRUE se o método for bem-sucedido; caso contrário, FALSE.

Observações

Esse método envia a mensagem RB_SETBANDWIDTH , que é descrita no SDK do Windows.

Exemplo

O primeiro exemplo de código define a variável, m_rebar, que é usada para acessar o controle de vergalhão atual. Esta variável é usada no próximo exemplo.

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

O próximo exemplo de código define cada banda de vergalhão para ter a mesma largura.

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

Implementa o comportamento do RB_SETBARINFO de mensagens Win32, conforme descrito no SDK do Windows.

BOOL SetBarInfo(REBARINFO* prbi);

Parâmetros

PRBI
Um ponteiro para uma estrutura REBARINFO que contém as informações a serem definidas. Você deve definir o cbSize membro dessa estrutura como sizeof(REBARINFO) antes de enviar esta mensagem

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

Exemplo

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

CReBarCtrl::SetBkColor

Implementa o comportamento do RB_SETBKCOLOR de mensagens Win32, conforme descrito no SDK do Windows.

COLORREF SetBkColor(COLORREF clr);

Parâmetros

CLR
O valor COLORREF que representa a nova cor de plano de fundo padrão.

Valor de retorno

Um valor COLORREF que representa a cor de plano de fundo padrão anterior.

Observações

Consulte este tópico para obter mais informações sobre quando definir a cor do plano de fundo e como definir o padrão.

CReBarCtrl::SetColorScheme

Define o esquema de cores para os botões em um controle de vergalhão.

void SetColorScheme(const COLORSCHEME* lpcs);

Parâmetros

LPCs
Um ponteiro para uma estrutura COLORSCHEME , conforme descrito no SDK do Windows.

Observações

A COLORSCHEME estrutura inclui a cor de realce do botão e a cor da sombra do botão.

CReBarCtrl::SetExtendedStyle

Define os estilos estendidos para o controle de vergalhão atual.

DWORD SetExtendedStyle(
    DWORD dwMask,
    DWORD dwStyleEx);

Parâmetros

dwMáscara
[em] Uma combinação bit a bit (OR) de sinalizadores que especificam quais sinalizadores no parâmetro dwStyleEx se aplicam. Use um ou mais dos seguintes valores:

  • RBS_EX_SPLITTER: Por padrão, mostre o divisor na parte inferior no modo horizontal e à direita no modo vertical.
  • RBS_EX_TRANSPARENT: Encaminhe a mensagem WM_ERASEBKGND para a janela pai.

dwStyleEx
[em] Uma combinação bit a bit (OR) de sinalizadores que especificam os estilos a serem aplicados. Para definir um estilo, especifique o mesmo sinalizador usado no parâmetro dwMask . Para redefinir um estilo, especifique zero binário.

Valor de retorno

O estilo estendido anterior.

Observações

Esse método envia a mensagem RB_SETEXTENDEDSTYLE , que é descrita no SDK do Windows.

CReBarCtrl::SetImageList

Atribui uma lista de imagens a um controle de vergalhão.

BOOL SetImageList(CImageList* pImageList);

Parâmetros

pImageList
Um ponteiro para um objeto CImageList que contém a lista de imagens a ser atribuída ao controle de vergalhão.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

CReBarCtrl::SetOwner

Implementa o comportamento do RB_SETPARENT de mensagens Win32, conforme descrito no SDK do Windows.

CWnd* SetOwner(CWnd* pWnd);

Parâmetros

pWnd
Um ponteiro para um CWnd objeto a ser definido como o proprietário do controle de vergalhão.

Valor de retorno

Um ponteiro para um objeto CWnd que é o proprietário atual do controle de vergalhão.

Observações

Observe que essa função de membro usa ponteiros para CWnd objetos para o proprietário atual e selecionado do controle de vergalhão, em vez de alças para janelas.

Observação

Essa função de membro não altera o pai real que foi definido quando o controle foi criado; em vez disso, ele envia mensagens de notificação para a janela que você especificar.

CReBarCtrl::SetPalette

Implementa o comportamento do RB_SETPALETTE de mensagens do Win32, conforme descrito no SDK do Windows.

CPalette* SetPalette(HPALETTE hPal);

Parâmetros

hPal
Um HPALETTE que especifica a nova paleta que o controle de vergalhão usará.

Valor de retorno

Um ponteiro para um objeto CPalette especificando a paleta anterior do controle de vergalhão.

Observações

Observe que essa função de membro usa um CPalette objeto como seu valor de retorno, em vez de um HPALETTE.

CReBarCtrl::SetTextColor

Implementa o comportamento do RB_SETTEXTCOLOR de mensagens Win32, conforme descrito no SDK do Windows.

COLORREF SetTextColor(COLORREF clr);

Parâmetros

CLR
Um valor COLORREF que representa a nova cor do CReBarCtrl texto no objeto.

Valor de retorno

O valor COLORREF que representa a cor do texto anterior associada ao CReBarCtrl objeto.

Observações

Ele é fornecido para suportar a flexibilidade de cor do texto em um controle de vergalhão.

CReBarCtrl::SetToolTips

Associa um controle de ponta de ferramenta a um controle de vergalhão.

void SetToolTips(CToolTipCtrl* pToolTip);

Parâmetros

pDica de ferramenta
Um ponteiro para um objeto CToolTipCtrl

Observações

Você deve destruir o CToolTipCtrl objeto quando terminar de usá-lo.

CReBarCtrl::SetWindowTheme

Define o estilo visual do controle de vergalhão.

HRESULT SetWindowTheme(LPCWSTR pszSubAppName);

Parâmetros

pszSubAppName
Um ponteiro para uma cadeia de caracteres Unicode que contém o estilo visual de vergalhão a ser definido.

Valor de retorno

O valor de retorno não é usado.

Observações

Essa função de membro emula a funcionalidade da mensagem RB_SETWINDOWTHEME , conforme descrito no SDK do Windows.

CReBarCtrl::ShowBand

Implementa o comportamento do RB_SHOWBAND de mensagens Win32, conforme descrito no SDK do Windows.

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

Parâmetros

uBand
Índice baseado em zero de uma banda no controle de vergalhão.

fShow
Indica se a banda deve ser mostrada ou ocultada. Se esse valor for TRUE, a banda será mostrada. Caso contrário, a banda ficará oculta.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

CReBarCtrl::SizeToRect

Implementa o comportamento do RB_SIZETORECT de mensagens Win32, conforme descrito no SDK do Windows.

BOOL SizeToRect(CRect& rect);

Parâmetros

retângulo
Uma referência a um objeto CRect que especifica o retângulo para o qual o controle de vergalhão deve ser dimensionado.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

Observações

Observe que essa função de membro usa um CRect objeto como parâmetro, em vez de uma RECT estrutura.

Ver também

CWnd Classe
Gráfico de Hierarquia