Compartilhar via


Classe CMFCToolBar

A classe CMFCToolBar se assemelha à classe CToolBar, mas dá suporte adicional a recursos de interface do usuário. Elas incluem barras de ferramentas simples, barras de ferramentas com imagens quentes, ícones grandes, botões de pager, barras de ferramentas bloqueadas, controles rebar, texto sob imagens, imagens de tela de fundo e barras de ferramentas com guias. A classe CMFCToolBar também contém suporte interno para personalização do usuário de barras de ferramentas e menus, arrastar e soltar entre barras de ferramentas e menus, botões de caixa de combinação, botões de caixa de edição, seletores de cores e botões cumulativos.

Para conhecer mais detalhes, confira o código-fonte localizado na sua instalação do Visual Studio, por exemplo, %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc.

Sintaxe

class CMFCToolBar : public CMFCBaseToolBar

Membros

Construtores públicos

Nome Descrição
CMFCToolBar::CMFCToolBar Construtor padrão.
CMFCToolBar::~CMFCToolBar Destruidor.

Métodos públicos

Nome Descrição
CMFCToolBar::AddBasicCommand Adiciona um comando de menu à lista de comandos que sempre são exibidos quando um usuário abre um menu.
CMFCToolBar::AddCommandUsage Incrementa em um o contador associado ao comando determinado.
CMFCToolBar::AddToolBarForImageCollection Adiciona imagens dos recursos da interface do usuário à coleção de imagens no aplicativo.
CMFCToolBar::AdjustLayout Recalcula o tamanho e a posição de uma barra de ferramentas. (Substitui CBasePane::AdjustLayout).
CMFCToolBar::AdjustSize Recalcula o tamanho da barra de ferramentas.
CMFCToolBar::AllowChangeTextLabels Especifica se os rótulos de texto podem ser mostrados abaixo das imagens nos botões da barra de ferramentas.
CMFCToolBar::AreTextLabels Especifica se os rótulos de texto abaixo das imagens são exibidos atualmente nos botões da barra de ferramentas.
CMFCToolBar::AutoGrayInactiveImages Habilita ou desabilita a geração automática de imagens de botão inativas.
CMFCToolBar::ButtonToIndex Retorna o índice de um objeto Classe CMFCToolBarButton nessa barra de ferramentas.
CMFCToolBar::CalcFixedLayout Calcula o tamanho horizontal da barra de ferramentas. (Substitui CBasePane::CalcFixedLayout.)
CMFCToolBar::CalcSize Chamado pela estrutura como parte do processo de cálculo de layout. (Substitui CPane::CalcSize.)
CMFCToolBar::CanHandleSiblings Determina se a barra de ferramentas e seu irmão estão posicionados no mesmo painel.
CMFCToolBar::CleanUpImages Libera os recursos do sistema alocados para imagens da barra de ferramentas.
CMFCToolBar::CleanUpLockedImages Libera os recursos do sistema alocados para imagens de barra de ferramentas bloqueadas.
CMFCToolBar::CanBeClosed Especifica se um usuário pode fechar a barra de ferramentas. (Substitui CBasePane::CanBeClosed.)
CMFCToolBar::CanBeRestored Determina se o sistema pode restaurar o estado original de uma barra de ferramentas após a personalização.
CMFCToolBar::CanFocus Especifica se o painel pode receber foco. (Substitui CBasePane::CanFocus.)
CMFCToolBar::CanHandleSiblings Determina se a barra de ferramentas e seu irmão estão posicionados no mesmo painel.
CMFCToolBar::CommandToIndex Retorna o índice do botão na barra de ferramentas com uma ID de comando especificada.
CMFCToolBar::Create Cria um objeto CMFCToolBar.
CMFCToolBar::CreateEx Cria um objeto CMFCToolBar que usa opções de estilo adicionais, por exemplo, ícones grandes.
CMFCToolBar::Deactivate Desativa a barra de ferramentas.
CMFCToolBar::EnableCustomizeButton Habilita ou desabilita o botão Adicionar ou Remover Botões que aparece no final da barra de ferramentas.
CMFCToolBar::EnableDocking Habilita o encaixe do painel ao quadro principal. (Substitui CBasePane::EnableDocking.)
CMFCToolBar::EnableLargeIcons Habilita ou desabilita ícones grandes nos botões da barra de ferramentas.
CMFCToolBar::EnableQuickCustomization Habilita ou desabilita a personalização rápida das barras de ferramentas para que o usuário possa pressionar a tecla Alt e arrastar um botão para um novo local.
CMFCToolBar::EnableReflections Habilita ou desabilita a reflexão de comando.
CMFCToolBar::EnableTextLabels Habilita ou desabilita rótulos de texto abaixo de imagens de botão da barra de ferramentas.
CMFCToolBar::FromHandlePermanent Recupera um ponteiro para o objeto CMFCToolBar que contém o identificador de janela fornecido.
CMFCToolBar::GetAllButtons Retorna uma lista somente leitura de botões em uma barra de ferramentas.
CMFCToolBar::GetAllToolbars Retorna uma lista somente leitura de todas as barras de ferramentas no aplicativo.
CMFCToolBar::GetBasicCommands Retorna uma lista somente leitura dos comandos básicos definidos no aplicativo.
CMFCToolBar::GetButton Retorna um ponteiro para o objeto CMFCToolBarButton que tem um índice de botão de barra de ferramentas especificado.
CMFCToolBar::GetButtonInfo Retorna a ID de comando, o estilo e o índice de imagem do botão em um índice especificado.
CMFCToolBar::GetButtonSize Retorna as dimensões de cada botão na barra de ferramentas.
CMFCToolBar::GetButtonStyle Retorna o estilo atual do botão da barra de ferramentas localizado no índice especificado.
CMFCToolBar::GetButtonText Retorna o rótulo de texto de um botão que tem um índice especificado.
CMFCToolBar::GetColdImages Retorna um ponteiro para a coleção de imagens de botão de barra de ferramentas inativas no aplicativo.
CMFCToolBar::GetColumnWidth Retorna a largura dos botões da barra de ferramentas.
CMFCToolBar::GetCommandButtons Retorna uma lista de botões que têm uma ID de comando especificada de todas as barras de ferramentas no aplicativo.
CMFCToolBar::GetCount Retorna o número de botões e separadores na barra de ferramentas.
CMFCToolBar::GetCustomizeButton Recupera um ponteiro para o objeto CMFCCustomizeButton associado à barra de ferramentas.
CMFCToolBar::GetDefaultImage Retorna o índice da imagem padrão para um botão de barra de ferramentas com uma ID de comando especificada.
CMFCToolBar::GetDisabledImages Retorna um ponteiro para a coleção de imagens que são usadas em botões de barra de ferramentas desabilitados no aplicativo.
CMFCToolBar::GetDisabledMenuImages Retorna um ponteiro para a coleção de imagens que são usadas em botões de menu desabilitados no aplicativo.
CMFCToolBar::GetDroppedDownMenu Recupera um ponteiro para o objeto de botão de menu que está atualmente exibindo seu submenu.
CMFCToolBar::GetGrayDisabledButtons Especifica se as imagens de botões desabilitados são versões esmaecidas das imagens de botão regulares ou tiradas da coleção de imagens de botão desabilitadas.
CMFCToolBar::GetHighlightedButton Retorna um ponteiro para o botão da barra de ferramentas que está realçado no momento.
CMFCToolBar::GetHotBorder Determina se os botões da barra de ferramentas são controlados com frequência.
CMFCToolBar::GetHotTextColor Retorna a cor do texto dos botões de barra de ferramentas realçados.
CMFCToolBar::GetHwndLastFocus Retorna um identificador para a janela que tinha o foco de entrada pouco antes da barra de ferramentas.
CMFCToolBar::GetIgnoreSetText Especifica se as chamadas para definir rótulos de botão são ignoradas.
CMFCToolBar::GetImageSize Retorna o tamanho atual das imagens de botão da barra de ferramentas.
CMFCToolBar::GetImages Retorna um ponteiro para a coleção de imagens de botão padrão no aplicativo.
CMFCToolBar::GetImagesOffset Retorna o deslocamento de índice usado para localizar as imagens do botão da barra de ferramentas para essa barra de ferramentas na lista global de imagens de botão da barra de ferramentas.
CMFCToolBar::GetInvalidateItemRect Recupera a região da área do cliente que precisa ser redesenhada para o botão no índice fornecido.
CMFCToolBar::GetItemID Retorna a ID de comando do botão da barra de ferramentas em um índice especificado.
CMFCToolBar::GetItemRect Retorna o retângulo delimitador do botão em um índice especificado.
CMFCToolBar::GetLargeColdImages Retorna um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas inativas no aplicativo.
CMFCToolBar::GetLargeDisabledImages Retorna um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas desabilitadas no aplicativo.
CMFCToolBar::GetLargeImages Retorna um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas no aplicativo.
CMFCToolBar::GetLockedColdImages Retorna um ponteiro para a coleção de imagens inativas bloqueadas na barra de ferramentas.
CMFCToolBar::GetLockedDisabledImages Retorna um ponteiro para a coleção de imagens desabilitadas bloqueadas na barra de ferramentas.
CMFCToolBar::GetLockedImages Retorna um ponteiro para a coleção de imagens de botão bloqueadas na barra de ferramentas.
CMFCToolBar::GetLockedImageSize Retorna o tamanho padrão das imagens da barra de ferramentas bloqueadas.
CMFCToolBar::GetLockedMenuImages Retorna um ponteiro para a coleção de imagens de menu de barra de ferramentas bloqueadas na barra de ferramentas.
CMFCToolBar::GetMenuButtonSize Retorna o tamanho dos botões de menu no aplicativo.
CMFCToolBar::GetMenuImageSize Retorna o tamanho das imagens de botão de menu no aplicativo.
CMFCToolBar::GetMenuImages Retorna um ponteiro para a coleção de imagens de botão do menu no aplicativo.
CMFCToolBar::GetOrigButtons Recupera a coleção de botões não personalizados da barra de ferramentas.
CMFCToolBar::GetOrigResetButtons Recupera a coleção de botões de redefinição não personalizados da barra de ferramentas.
CMFCToolBar::GetResourceID Recupera a ID do recurso da barra de ferramentas.
CMFCToolBar::GetRouteCommandsViaFrame Determina qual objeto, o quadro pai ou o proprietário, envia comandos para a barra de ferramentas.
CMFCToolBar::GetRowHeight Retorna a altura dos botões da barra de ferramentas.
CMFCToolBar::GetShowTooltips Especifica se as dicas de ferramenta são exibidas para os botões da barra de ferramentas.
CMFCToolBar::GetSiblingToolBar Recupera o irmão da barra de ferramentas.
CMFCToolBar::GetUserImages Retorna um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas definidas pelo usuário no aplicativo.
CMFCToolBar::HitTest Retorna o índice do botão da barra de ferramentas que está localizado na posição especificada.
CMFCToolBar::InsertButton Insere um botão na barra de ferramentas.
CMFCToolBar::InsertSeparator Insere um separador na barra de ferramentas.
CMFCToolBar::InvalidateButton Invalida a área do cliente do botão da barra de ferramentas que existe no índice fornecido.
CMFCToolBar::IsAddRemoveQuickCustomize Determina se um usuário pode adicionar ou remover botões da barra de ferramentas usando a opção de menu Personalizar.
CMFCToolBar::IsAltCustomizeMode Especifica se a personalização rápida está sendo usada para arrastar um botão.
CMFCToolBar::IsAutoGrayInactiveImages Especifica se a geração automática de imagens de botão inativas (não realçadas) está habilitada.
CMFCToolBar::IsBasicCommand Determina se um comando está na lista de comandos básicos.
CMFCToolBar::IsButtonExtraSizeAvailable Determina se a barra de ferramentas pode exibir botões que têm bordas estendidas.
CMFCToolBar::IsButtonHighlighted Determina se um botão na barra de ferramentas está realçado.
CMFCToolBar::IsCommandPermitted Determina se um comando é permitido.
CMFCToolBar::IsCommandRarelyUsed Determina se um comando raramente é usado (confira CMFCToolBar::SetCommandUsageOptions).
CMFCToolBar::IsCustomizeMode Especifica se a estrutura da barra de ferramentas está no modo de personalização.
CMFCToolBar::IsDragButton Determina se um botão da barra de ferramentas está sendo arrastado.
CMFCToolBar::IsExistCustomizeButton Determina se a barra de ferramentas contém o botão Personalizar.
CMFCToolBar::IsFloating Determina se a barra de ferramentas está flutuando.
CMFCToolBar::IsLargeIcons Especifica se as barras de ferramentas no aplicativo exibem ícones grandes no momento.
CMFCToolBar::IsLastCommandFromButton Determina se o comando executado mais recentemente foi enviado do botão da barra de ferramentas especificado.
CMFCToolBar::IsLocked Determina se a barra de ferramentas está bloqueada.
CMFCToolBar::IsOneRowWithSibling Determina se a barra de ferramentas e sua barra de ferramentas irmã estão posicionadas na mesma linha.
CMFCToolBar::IsUserDefined Especifica se a barra de ferramentas foi definida pelo usuário.
CMFCToolBar::LoadBitmap Carrega imagens da barra de ferramentas dos recursos do aplicativo.
CMFCToolBar::LoadBitmapEx Carrega imagens da barra de ferramentas dos recursos do aplicativo. Inclui imagens grandes.
CMFCToolBar::LoadParameters Carrega opções de barra de ferramentas globais do registro do Windows.
CMFCToolBar::LoadState Carrega as informações de estado da barra de ferramentas do registro do Windows. (Substitui CPane::LoadState.)
CMFCToolBar::LoadToolBar Carrega a barra de ferramentas dos recursos do aplicativo.
CMFCToolBar::LoadToolBarEx Carrega a barra de ferramentas dos recursos do aplicativo usando a classe auxiliar CMFCToolBarInfo para permitir que o aplicativo use imagens grandes.
CMFCToolBar::OnChangeHot Chamado pela estrutura quando um usuário seleciona um botão na barra de ferramentas.
CMFCToolBar::OnFillBackground Chamado pela estrutura de CBasePane::DoPaint para preencher o segundo plano da barra de ferramentas.
CMFCToolBar::OnReset Restaura o estado original da barra de ferramentas.
CMFCToolBar::OnSetAccData (Substitui CBasePane::OnSetAccData.)
CMFCToolBar::OnSetDefaultButtonText Restaura o estado padrão do texto de um botão de barra de ferramentas.
CMFCToolBar::OnUpdateCmdUI Usado internamente.
CMFCToolBar::RemoveAllButtons Remove todos os botões da barra de ferramentas.
CMFCToolBar::RemoveButton Remove o botão com o índice especificado da barra de ferramentas.
CMFCToolBar::RemoveStateFromRegistry Exclui as informações de estado da barra de ferramentas do registro do Windows.
CMFCToolBar::ReplaceButton Substitui um botão da barra de ferramentas por outro botão da barra de ferramentas.
CMFCToolBar::ResetAll Restaura todas as barras de ferramentas para seus estados originais.
CMFCToolBar::ResetAllImages Limpa todas as coleções de imagens da barra de ferramentas no aplicativo.
CMFCToolBar::RestoreOriginalState Restaura o estado original de uma barra de ferramentas.
CMFCToolBar::SaveState Salva as informações de estado da barra de ferramentas no registro do Windows. (Substitui CPane::SaveState.)
CMFCToolBar::Serialize (Substitui CBasePane::Serialize.)
CMFCToolBar::SetBasicCommands Define a lista de comandos que sempre são exibidos quando um usuário abre um menu.
CMFCToolBar::SetButtonInfo Define a ID de comando, o estilo e a ID da imagem de um botão da barra de ferramentas.
CMFCToolBar::SetButtonStyle Define o estilo do botão da barra de ferramentas no índice fornecido.
CMFCToolBar::SetButtonText Define o rótulo de texto de um botão de barra de ferramentas.
CMFCToolBar::SetButtons Define os botões da barra de ferramentas.
CMFCToolBar::SetCommandUsageOptions Especifica quando os comandos raramente usados não aparecem no menu do aplicativo.
CMFCToolBar::SetCustomizeMode Habilita ou desabilita o modo de personalização de todas as barras de ferramentas no aplicativo.
CMFCToolBar::SetGrayDisabledButtons Especifica se os botões desabilitados na barra de ferramentas estão esmaecidos ou se imagens desabilitadas são usadas em botões desabilitados.
CMFCToolBar::SetHeight Define a altura da barra de ferramentas.
CMFCToolBar::SetHotBorder Especifica se os botões da barra de ferramentas são controlados com frequência.
CMFCToolBar::SetHotTextColor Define a cor do texto para botões de barra de ferramentas de uso frequente.
CMFCToolBar::SetLargeIcons Especifica se os botões da barra de ferramentas exibem ícones grandes.
CMFCToolBar::SetLockedSizes Define os tamanhos de botões bloqueados e imagens bloqueadas na barra de ferramentas.
CMFCToolBar::SetMenuSizes Define o tamanho dos botões de menu da barra de ferramentas e suas imagens.
CMFCToolBar::SetNonPermittedCommands Define a lista de comandos que não podem ser executados pelo usuário.
CMFCToolBar::SetOneRowWithSibling Posiciona a barra de ferramentas e sua irmã na mesma linha.
CMFCToolBar::SetPermament Especifica se um usuário pode fechar a barra de ferramentas.
CMFCToolBar::SetRouteCommandsViaFrame Especifica se o quadro pai ou o proprietário envia comandos para a barra de ferramentas.
CMFCToolBar::SetShowTooltips Especifica se a estrutura exibe dicas de ferramenta.
CMFCToolBar::SetSiblingToolBar Especifica a irmã da barra de ferramentas.
CMFCToolBar::SetSizes Especifica os tamanhos de botões e imagens em todas as barras de ferramentas.
CMFCToolBar::SetToolBarBtnText Especifica as propriedades de um botão na barra de ferramentas.
CMFCToolBar::SetTwoRowsWithSibling Posiciona a barra de ferramentas e sua irmã em linhas separadas.
CMFCToolBar::SetUserImages Define a coleção de imagens definidas pelo usuário no aplicativo.
CMFCToolBar::StretchPane Alonga a barra de ferramentas vertical ou horizontalmente. (Substitui CBasePane::StretchPane.)
CMFCToolBar::TranslateChar Executa um comando de botão se o código de chave especificado corresponder a um atalho de teclado válido.
CMFCToolBar::UpdateButton Atualiza o estado do botão especificado.
CMFCToolBar::WrapToolBar Reposiciona botões da barra de ferramentas dentro das dimensões fornecidas.

Métodos protegidos

Nome Descrição
CMFCToolBar::AllowShowOnList Determina se a barra de ferramentas é exibida na lista no painel Barras de Ferramentas da caixa de diálogo Personalizar.
CMFCToolBar::CalcMaxButtonHeight Calcula a altura máxima de um botão na barra de ferramentas.
CMFCToolBar::DoPaint Repinta uma barra de ferramentas.
CMFCToolBar::DrawButton Repinta um botão de barra de ferramentas.
CMFCToolBar::DrawSeparator Repinta um separador em uma barra de ferramentas.
CMFCToolBar::OnUserToolTip Chamado pela estrutura quando a dica de ferramenta de um botão está prestes a ser exibida.

Membros de dados

Nome Descrição
CMFCToolBar::m_bDontScaleImages Especifica se as imagens da barra de ferramentas devem ser dimensionadas ou não no modo DPI alto.
CMFCToolBar::m_dblLargeImageRatio Especifica a proporção entre a dimensão (altura ou largura) de imagens grandes e a dimensão de imagens regulares.

Comentários

Para incorporar um objeto CMFCToolBar ao aplicativo, siga estas etapas:

  1. Adicione um objeto CMFCToolBar à janela do quadro principal.

  2. Ao processar a mensagem WM_CREATE para a janela de quadro principal, chame CMFCToolBar::Create ou CMFCToolBar::CreateEx para criar a barra de ferramentas e especificar seu estilo.

  3. Chame CBasePane::EnableDocking para especificar o estilo de encaixe.

Para inserir um botão especial, como uma caixa de combinação ou uma barra de ferramentas suspensa, reserve um botão fictício no recurso pai e substitua o botão fictício no runtime usando CMFCToolBar::ReplaceButton. Para saber mais, confira Passo a passo: colocando controles em barras de ferramentas.

CMFCToolBar é a classe base para as classes CMFCMenuBar classe, CMFCPopupMenuBar classee CMFCDropDownToolBar classe da Biblioteca MFC.

Exemplo

O exemplo a seguir demonstra como usar vários métodos na classe CMFCToolBar. O exemplo mostra como definir o texto do rótulo da janela da barra de ferramentas, definir as bordas, definir o estilo do painel e habilitar o botão Adicionar ou Remover Botões que aparece na extremidade da barra de ferramentas. Este snippet de código faz parte do exemplo de demonstração do IE.

CMFCToolBar m_wndToolBar;
m_wndToolBar.SetWindowText(_T("Standard"));
m_wndToolBar.SetBorders();

//------------------------------------
// Remove toolbar gripper and borders:
//------------------------------------
m_wndToolBar.SetPaneStyle(m_wndToolBar.GetPaneStyle() &
                          ~(CBRS_GRIPPER | CBRS_BORDER_TOP | CBRS_BORDER_BOTTOM | CBRS_BORDER_LEFT | CBRS_BORDER_RIGHT));

m_wndToolBar.EnableCustomizeButton(TRUE, ID_VIEW_CUSTOMIZE, _T("Customize..."));

Requisitos

Cabeçalho: afxtoolbar.h

Hierarquia de herança

CObject

CCmdTarget

CWnd

CBasePane

CPane

CMFCBaseToolBar

CMFCToolBar

CMFCToolBar::AddBasicCommand

Adiciona um comando de menu à lista de comandos que sempre são exibidos quando um usuário abre um menu.

static void __stdcall AddBasicCommand(UINT uiCmd);

Parâmetros

uiCmd
[in] Especifica o comando a ser adicionado.

Comentários

Um comando básico sempre é exibido quando o menu é aberto. Esse método é relevante quando o usuário opta por exibir comandos usados recentemente.

Use o método CMFCToolBar::SetBasicCommands para definir a lista de comandos que sempre são exibidos quando um usuário abre um menu. Use o método CMFCToolBar::GetBasicCommands para recuperar a lista de comandos básicos usados pelo aplicativo.

CMFCToolBar::AddCommandUsage

Incrementa em um o contador associado ao comando determinado.

static void __stdcall AddCommandUsage(UINT uiCommand);

Parâmetros

uiCommand
[in] Especifica o contador de comandos a ser incrementado.

Comentários

A estrutura chama esse método quando o usuário seleciona um item de menu.

A estrutura usa contadores de comando para exibir itens de menu usados recentemente.

Esse método incrementa o contador de comandos usando o método CMFCCmdUsageCount::AddCmd.

CMFCToolBar::AddToolBarForImageCollection

Adiciona imagens dos recursos da interface do usuário à coleção de imagens no aplicativo.

static BOOL __stdcall AddToolBarForImageCollection(
    UINT uiResID,
    UINT uiBmpResID=0,
    UINT uiColdResID=0,
    UINT uiMenuResID=0,
    UINT uiDisabledResID=0,
    UINT uiMenuDisabledResID=0);

Parâmetros

uiResID
[in] ID de recurso de uma barra de ferramentas com imagens a serem carregadas.

uiBmpResID
[in] ID do recurso de um bitmap com imagens da barra de ferramentas.

uiColdResID
[in] ID do recurso de um bitmap com imagens da barra de ferramentas “inativas”.

uiMenuResID
[in] ID do recurso de um bitmap com imagens de menu.

uiDisabledResID
[in] ID do recurso de um bitmap com imagens de barra de ferramentas desabilitadas.

uiMenuDisabledResID
[in] ID do recurso de um bitmap com imagens de menu desabilitadas.

Valor de retorno

TRUE se o método for bem-sucedido; FALSE se uiResID ou uiBmpResID não especificar recursos válidos ou ocorrer outro erro.

Comentários

Chame esse método para carregar um bitmap com imagens da barra de ferramentas e adicioná-lo à coleção de imagens da barra de ferramentas. Esse método cria um objeto de barra de ferramentas temporário e chama CMFCToolBar::LoadToolBar.

CMFCToolBar::AdjustLayout

Recalcula o tamanho e a posição de uma barra de ferramentas.

virtual void AdjustLayout();

Comentários

Chame esse método quando a barra de ferramentas tiver sido criada para recalcular seu tamanho e posição.

A estrutura chama esse método sempre que o layout da barra de ferramentas precisa ser alterado. Por exemplo, o layout precisa ser alterado quando o usuário move outra barra de controle, redimensiona uma janela do aplicativo ou personaliza a barra de ferramentas.

Substitua esse método para fornecer seu próprio layout dinâmico nas classes que você deriva de CMFCToolbar.

CMFCToolBar::AdjustSize

Recalcula o tamanho da barra de ferramentas.

void AdjustSize();

Comentários

Esse método garante que a barra de ferramentas se encaixará nos limites do quadro pai. Esse método não fará nada se a barra de ferramentas não tiver nenhum quadro pai.

O método CMFCToolBar::AdjustLayout chamará esse método para recalcular o tamanho se o pai da barra de ferramentas não for um objeto CMFCReBar.

CMFCToolBar::AllowChangeTextLabels

Especifica se os rótulos de texto podem ser mostrados abaixo das imagens nos botões da barra de ferramentas.

virtual BOOL AllowChangeTextLabels() const;

Valor de retorno

TRUE se for permitido exibir rótulos de texto abaixo de imagens; caso contrário, FALSE.

Comentários

Esse método é chamado pela caixa de diálogo de personalização para determinar se uma caixa de seleção Mostrar rótulos de texto deve ser habilitada ou não na página Barras de Ferramentas da barra de ferramentas selecionada.

A implementação padrão retorna TRUE.

Substitua esse método em um objeto derivado CMFCToolBar e retorne FALSE quando você não quiser que o usuário decida sobre a exibição dos rótulos de texto nos botões da barra de ferramentas abaixo das imagens.

CMFCToolBar::AllowShowOnList

Determina se a barra de ferramentas é exibida na lista de barras de ferramentas no painel Barras de Ferramentas da caixa de diálogo Personalizar.

virtual BOOL AllowShowOnList() const;

Valor de retorno

TRUE se o objeto da barra de ferramentas puder ser exibido na caixa de listagem na página de personalização da barra de ferramentas; caso contrário, FALSE.

Comentários

Esse método é chamado pela estrutura para determinar se a lista na página de personalização da barra de ferramentas deve incluir um objeto específico derivado de CMFCToolBar.

A implementação padrão sempre retorna TRUE. Substitua esse método quando você não quiser que uma barra de ferramentas apareça na lista de barras de ferramentas na caixa de diálogo de personalização.

CMFCToolBar::AreTextLabels

Especifica se os rótulos de texto abaixo das imagens são exibidos atualmente nos botões da barra de ferramentas.

BOOL AreTextLabels() const;

Valor de retorno

TRUE se os botões da barra de ferramentas exibirem rótulos de texto abaixo das imagens; caso contrário, FALSE.

Comentários

Use CMFCToolBar::EnableTextLabels para especificar se o texto é exibido. O valor padrão é FALSE. Chame CMFCToolBar::AllowChangeTextLabels para especificar se o usuário pode alterar essa configuração na caixa de diálogo de personalização.

CMFCToolBar::AutoGrayInactiveImages

Habilita ou desabilita a geração automática de imagens de botão inativas.

static void AutoGrayInactiveImages(
    BOOL bEnable=TRUE,
    int nGrayImagePercentage=0,
    BOOL bRedrawAllToolbars=TRUE);

Parâmetros

bEnable
[in] Um valor booliano que especifica se as imagens inativas devem ficar esmaecidas. Se esse parâmetro for TRUE, as imagens inativas serão esmaecidas. Caso contrário, as imagens inativas não serão esmaecidas.

nGrayImagePercentage
[in] Especifica o percentual de luminância das imagens inativas. Se bEnable for FALSE, esse valor será ignorado.

bRedrawAllToolbars
[in] Um valor booliano que especifica se todas as barras de ferramentas devem ser redesenhadas no aplicativo ou não. Se o parâmetro for TRUE, esse método redesenhará todas as barras de ferramentas.

Comentários

Se bEnable for TRUE, a estrutura usa nGrayImagePercentage para gerar imagens inativas das imagens regulares. Caso contrário, você precisa fornecer o conjunto de imagens inativas usando o método CMFCToolBar::GetColdImages. Por padrão, essa opção está desabilitada.

Para saber mais sobre o parâmetro nGrayImagePercentage, confira CMFCToolBarImages::GrayImages.

CMFCToolBar::ButtonToIndex

Retorna o índice de um objeto Classe CMFCToolBarButton nessa barra de ferramentas.

int ButtonToIndex(const CMFCToolBarButton* pButton) const;

Parâmetros

pButton
[in] Um ponteiro para o objeto de botão da barra de ferramentas.

Valor de retorno

Índice de pButton na lista interna de botões da barra de ferramentas; ou -1 se o botão especificado não estiver nessa barra de ferramentas.

CMFCToolBar::CalcFixedLayout

Calcula o tamanho horizontal da barra de ferramentas.

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

Parâmetros

bStretch
[in] TRUE para esticar a barra de ferramentas até o tamanho do quadro pai.

bHorz
[in] TRUE para orientar a barra de ferramentas horizontalmente; FALSE para orientar a barra de ferramentas verticalmente.

Valor de retorno

Um objeto CSize que especifica o tamanho da barra de ferramentas.

Comentários

Esse método calcula o tamanho da barra de ferramentas usando o método CMFCToolBar::CalcLayout. Ele transmite o sinalizador LM_STRETCH ao parâmetro dwMode se bStretch for TRUE. Ele transmite o sinalizador LM_HORZ se bHorz for TRUE.

Confira o exemplo VisualStudioDemo para obter um exemplo que usa esse método.

CMFCToolBar::CalcMaxButtonHeight

Calcula a altura máxima dos botões na barra de ferramentas.

virtual int CalcMaxButtonHeight();

Valor de retorno

A altura máxima dos botões.

Comentários

Esse método calcula a altura máxima entre todos os botões da barra de ferramentas na barra de ferramentas. A altura pode variar dependendo de fatores como o estado de encaixe da barra de ferramentas atual.

Substitua esse método em uma classe derivada de CMFCToolBar para fornecer seu próprio cálculo de altura.

CMFCToolBar::CalcSize

Chamado pela estrutura como parte do processo de cálculo de layout.

virtual CSize CalcSize(BOOL bVertDock);

Parâmetros

bVertDock
[in] TRUE para especificar que a barra de ferramentas está encaixada verticalmente; FALSE para especificar que a barra de ferramentas está encaixada horizontalmente.

Valor de retorno

Um objeto CSize que especifica o tamanho geral dos botões na barra de ferramentas.

Comentários

Esse método considera os atributos que afetam o tamanho de cada botão, como a área do rótulo de texto e o tamanho da borda.

Se a barra de ferramentas não contiver botões, esse método retornará o tamanho reservado de um único botão usando o método CMFCToolBar::GetButtonSize.

CMFCToolBar::CanBeClosed

Especifica se um usuário pode fechar a barra de ferramentas.

virtual BOOL CanBeClosed() const;

Valor de retorno

TRUE se a barra de ferramentas puder ser fechada pelo usuário; caso contrário, FALSE.

Comentários

A estrutura chama esse método para determinar se o usuário pode fechar uma barra de ferramentas. Se o método retornar TRUE, a estrutura habilitará o comando SC_CLOSE no menu do sistema da barra de ferramentas e o usuário poderá fechar a barra de ferramentas usando uma caixa de seleção na lista de barras de ferramentas na caixa de diálogo de personalização.

A implementação padrão retorna TRUE. Substitua esse método em uma classe derivada para criar objetos de barra de ferramentas CMFCToolBar que não podem ser fechados pelo usuário.

CMFCToolBar::CanBeRestored

Determina se o sistema pode restaurar o estado original de uma barra de ferramentas após a personalização.

virtual BOOL CanBeRestored() const;

Valor de retorno

TRUE se a barra de ferramentas puder ser restaurada dos recursos do aplicativo; caso contrário, FALSE.

Comentários

A estrutura chama esse método para determinar se uma barra de ferramentas pode ser retornada ao estado original após a personalização. O estado original é carregado dos recursos do aplicativo.

Se CanBeRestored retornar TRUE, a página Barras de Ferramentas da caixa de diálogo de personalização habilitará o botão Redefinir para a barra de ferramentas selecionada.

A implementação padrão retornará TRUE se a ID de recurso original da barra de ferramentas quando ela foi carregada não for zero. Normalmente, somente as barras de ferramentas definidas pelo usuário não podem ser restauradas.

Você pode substituir o método CanBeRestored para personalizar esse comportamento em classes derivadas.

CMFCToolBar::CanFocus

Especifica se o painel pode receber foco.

virtual BOOL CanFocus() const;

Valor de retorno

Este método retorna FALSE.

Comentários

Esse método substitui a implementação da classe base, CBasePane::CanFocus, porque os objetos da barra de ferramentas não podem receber o foco.

CMFCToolBar::CanHandleSiblings

Determina se a barra de ferramentas e seu irmão estão posicionados no mesmo painel.

BOOL CanHandleSiblings();

Valor de retorno

TRUE se a barra de ferramentas tiver uma irmã e a barra de ferramentas e sua irmã estiverem posicionadas no mesmo painel; caso contrário, FALSE.

Comentários

O método interno CMFCCustomizeButton::CreatePopupMenu chama esse método para determinar como mostrar o menu pop-up Personalizar. Se esse método retornar TRUE, a estrutura exibirá os botões Mostrar em Uma Linha ou Mostrar Botões em Duas Linhas.

Normalmente, você não precisa usar esse método. Para habilitar o botão Personalizar que aparece na barra de ferramentas, chame o método CMFCToolBar::EnableCustomizeButton. Para habilitar os botões Mostrar em Uma Linha ou Mostrar Botões nos botões Duas Linhas, chame CMFCToolBar::SetSiblingToolBar.

CMFCToolBar::CleanUpImages

Libera os recursos do sistema alocados para imagens da barra de ferramentas.

static void CMFCToolBar::CleanUpImages();

Comentários

A estrutura chama esse método quando um aplicativo é desligado.

CMFCToolBar::CleanUpLockedImages

Libera os recursos do sistema alocados para imagens de barra de ferramentas bloqueadas.

void CleanUpLockedImages();

Comentários

Chame esse método quando o estilo visual do aplicativo for alterado. Confira o exemplo VisualStudioDemo para obter um exemplo que usa esse método.

CMFCToolBar::CommandToIndex

Retorna o índice do botão na barra de ferramentas com uma ID de comando especificada.

int CommandToIndex(
    UINT nIDFind,
    int iIndexFirst=0) const;

Parâmetros

nIDFind
[in] Especifica a ID do comando.

iIndexFirst
[in] Especifica o índice inicial de onde começar.

Valor de retorno

Índice baseado em zero do botão da barra de ferramentas se o método tiver sido bem-sucedido; -1 se não houver nenhum botão com a ID especificada.

Comentários

Um objeto CMFCToolBar mantém uma lista interna dos botões na barra de ferramentas. Chame essa função para recuperar o índice de um botão na lista, considerando a ID de comando do botão.

Se iIndex for maior que 0, esse método ignorará qualquer botão na barra de ferramentas que tenha um índice menor que iIndex.

CMFCToolBar::Create

Cria um objeto CMFCToolBar.

virtual BOOL Create(
    CWnd* pParentWnd,
    DWORD dwStyle=AFX_DEFAULT_TOOLBAR_STYLE,
    UINT nID=AFX_IDW_TOOLBAR);

Parâmetros

pParentWnd
[in] Um ponteiro para a janela pai da barra de ferramentas.

dwStyle
[in] O estilo da barra de ferramentas. Confira Controle da barra de ferramentas e estilos de botão no SDK do Windows para obter a lista de estilos.

nID
[in] A ID da janela filho da barra de ferramentas.

Valor de retorno

TRUE se esse método tiver êxito; caso contrário, FALSE.

Comentários

Esse método cria uma barra de controle e a anexa à barra de ferramentas. Ele cria a barra de controle com o estilo TBSTYLE_FLAT. Chame CMFCToolBar::CreateEx se você quiser um estilo de barra de controle diferente.

CMFCToolBar::CreateEx

Cria um objeto CMFCToolBar que usa opções de estilo adicionais, por exemplo, ícones grandes.

virtual BOOL CreateEx(
    CWnd* pParentWnd,
    DWORD dwCtrlStyle=TBSTYLE_FLAT,
    DWORD dwStyle=AFX_DEFAULT_TOOLBAR_STYLE,
    CRect rcBorders=CRect(1,
    1,
    1,
    1),
    UINT nID=AFX_IDW_TOOLBAR);

Parâmetros

pParentWnd
[in] Um ponteiro para a janela pai da barra de ferramentas.

dwCtrlStyle
[in] Estilos adicionais para criar o objeto de barra de controle inserido.

dwStyle
[in] O estilo da barra de ferramentas. Confira Controle da barra de ferramentas e estilos de botão para obter uma lista de estilos apropriados.

rcBorders
[in] Um objeto CRect que especifica as larguras das bordas da janela da barra de ferramentas.

nID
[in] A ID da janela filho da barra de ferramentas.

Valor de retorno

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

Comentários

Esse método cria uma barra de controle e a anexa à barra de ferramentas.

Chame esse método em vez de CMFCToolBar::Create quando você deseja fornecer estilos específicos. Por exemplo, defina dwCtrlStyle como TBSTYLE_FLAT | TBSTYLE_TRANSPARENT para criar uma barra de ferramentas semelhante às barras de ferramentas usadas pelo Internet Explorer 4.

Exemplo

O exemplo a seguir demonstra como usar o método CreateEx da classe CMFCToolBar. Este snippet de código faz parte do exemplo de demonstração do IE.

CMFCToolBar m_wndToolBar;
// The this pointer points to CMainFrame class which extends the CFrameWnd class.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_TRANSPARENT) ||
    !m_wndToolBar.LoadToolBar(IDR_MAINFRAME, uiToolbarColdID, uiMenuID,
                              FALSE /* Not locked */, 0, 0, uiToolbarHotID))
{
   TRACE0("Failed to create toolbar\n");
   return -1; // fail to create
}

CMFCToolBar::Deactivate

Desativa a barra de ferramentas.

virtual void Deactivate();

Comentários

Esse método desativa a barra de ferramentas removendo o foco do botão de barra de ferramentas realçado. A estrutura chama esse método quando a barra de ferramentas perde o foco ou é destruída.

CMFCToolBar::DoPaint

Repinta uma barra de ferramentas.

virtual void DoPaint(CDC* pDC);

Parâmetros

pDC
[in] Um ponteiro para um contexto de dispositivo.

Comentários

Esse método é chamado pela estrutura quando uma parte da barra de ferramentas precisa ser repintada.

Substitua esse método para personalizar a aparência de um objeto derivado de CMFCToolBar.

CMFCToolBar::DrawButton

Repinta um botão de barra de ferramentas.

virtual BOOL DrawButton(
    CDC* pDC,
    CMFCToolBarButton* pButton,
    CMFCToolBarImages* pImages,
    BOOL bHighlighted,
    BOOL bDrawDisabledImages);

Parâmetros

pDC
[in] Um ponteiro para um contexto de dispositivo.

pButton
[in] Um ponteiro para um botão a ser desenhado.

pImages
[in] Um ponteiro para as imagens da barra de ferramentas.

bHighlighted
[in] TRUE se o botão estiver realçado; caso contrário, FALSE.

bDrawDisabledImages
[in] TRUE se os botões desabilitados estiverem esmaecidos; caso contrário, FALSE.

Valor de retorno

TRUE se o botão foi repintado; FALSE se o botão estiver oculto.

Comentários

O método CMFCToolBar::DrawButton chama esse método quando um botão da barra de ferramentas precisa ser repintado.

Substitua esse método se você quiser personalizar a aparência dos botões na barra de ferramentas.

CMFCToolBar::DrawSeparator

Repinta um separador em uma barra de ferramentas.

virtual void DrawSeparator(
    CDC* pDC,
    const CRect& rect,
    BOOL bHorz);

Parâmetros

pDC
[in] Um ponteiro para um contexto de dispositivo.

rect
[in] O retângulo delimitador do local em que o separador é desenhado, em pixels.

bHorz
[in] Se TRUE, o separador será horizontal; se FALSE, o separador será vertical.

Comentários

CMFCToolBar::DoPaint chama esse método para cada objeto CMFCToolBar::DrawSeparator que tem o estilo TBBS_SEPARATOR, em vez de chamar CMFCToolBar::DrawButton para esses botões.

Substitua esse método em uma classe derivada CMFCToolBar para personalizar a aparência dos separadores na barra de ferramentas. A implementação padrão chama CMFCVisualManager::OnDrawSeparator para desenhar um separador cuja aparência é determinada pelo gerenciador visual atual.

CMFCToolBar::EnableCustomizeButton

Habilita ou desabilita o botão Personalizar que aparece na barra de ferramentas.

void EnableCustomizeButton(
    BOOL bEnable,
    int iCustomizeCmd,
    const CString& strCustomizeText,
    BOOL bQuickCustomize=TRUE);

void EnableCustomizeButton(
    BOOL bEnable,
    int iCustomizeCmd,
    UINT uiCustomizeTextResId,
    BOOL bQuickCustomize=TRUE);

Parâmetros

bEnable
[in] Habilita ou desabilita o botão Personalizar.

iCustomizeCmd
[in] A ID de comando do botão Personalizar.

strCustomizeText
[in] O rótulo de texto do botão Personalizar.

uiCustomizeTextResId
[in] A ID da cadeia de caracteres de recurso do rótulo de botão Personalizar.

bQuickCustomize
[in] Habilita ou desabilita a opção Adicionar ou Remover Botões no menu suspenso do botão.

Comentários

Se iCustomizeCmd for -1, a estrutura exibirá o botão Personalizar quando vários botões da barra de ferramentas não se ajustarem na área da barra de ferramentas. O botão exibe uma seta dupla ou divisa para a esquerda, o que indica que há mais botões.

Se iCustomizeCmd especificar uma ID de comando válida e bEnable for TRUE, o botão Personalizar sempre será exibido. O botão tem uma pequena seta para baixo e abre um menu que contém um comando. Esse comando usa o rótulo de texto especificado por strCustomizeText. Se bQuickCustomize também for TRUE, o menu exibirá a opção Adicionar ou Remover Botões.

A estrutura adiciona dinamicamente ao menu todos os botões que não se encaixam na área da barra de ferramentas antes do item especificado por iCustomizeCmd. A divisa é exibida ao lado da seta para baixo.

CMFCToolBar::EnableDocking

Habilita o encaixe do painel ao quadro principal.

virtual void EnableDocking(DWORD dwAlignment);

Parâmetros

dwAlignment
[in] Especifica o alinhamento de encaixe a ser habilitado.

Comentários

Esse método estende a implementação da classe base, CBasePane::EnableDocking, com a definição do membro de dados CBasePane::m_dwControlBarStyle como AFX_CBRS_FLOAT. Em seguida, esse método transmite dwAlignment à implementação da classe base.

CMFCToolBar::EnableLargeIcons

Habilita ou desabilita ícones grandes nos botões da barra de ferramentas.

void EnableLargeIcons(BOOL bEnable);

Parâmetros

bEnable
[in] TRUE para habilitar ícones grandes; FALSE para desabilitar ícones grandes.

Comentários

Por padrão, os ícones grandes estão habilitados.

CMFCToolBar::EnableQuickCustomization

Habilita ou desabilita a personalização rápida das barras de ferramentas para que o usuário possa pressionar a tecla Alt e arrastar um botão para um novo local.

static void EnableQuickCustomization(BOOL bEnable=TRUE);

Parâmetros

bEnable
[in] TRUE para habilitar a personalização rápida; FALSE para desabilitar a personalização rápida.

CMFCToolBar::EnableReflections

Habilita ou desabilita a reflexão de comando.

void EnableReflections(BOOL bEnable = TRUE);

Parâmetros

bEnable
[in] TRUE para habilitar a reflexão de comando; FALSE para desabilitar a reflexão de comando.

Comentários

Chame esse método a fim de habilitar a reflexão de comandos para botões da barra de ferramentas que contêm controles inseridos, como caixas de combinação.

Para saber mais sobre a reflexão de comandos, confira TN062: reflexão de mensagem para controles do Windows.

CMFCToolBar::EnableTextLabels

Habilita ou desabilita rótulos de texto abaixo de imagens de botão da barra de ferramentas.

void EnableTextLabels(BOOL bEnable=TRUE);

Parâmetros

bEnable
TRUE se os rótulos de texto aparecerem em imagens de botão da barra de ferramentas; caso contrário, FALSE.

Comentários

Se os rótulos de texto estiverem habilitados, todos os botões na barra de ferramentas serão ampliados a fim de fornecer espaço para que os rótulos sejam exibidos nas imagens. A caixa de diálogo de personalização tem uma caixa de seleção Mostrar rótulo de texto na página Barras de Ferramentas. Quando o usuário seleciona uma barra de ferramentas e marca essa opção, a estrutura chama EnableTextLabels para a barra de ferramentas selecionada. Você pode desabilitar a caixa de seleção de um objeto derivado de CMFCToolBar retornando FALSE de CMFCToolBar::AllowChangeTextLabels.

CMFCToolBar::FromHandlePermanent

Recupera um ponteiro para o objeto CMFCToolBar que contém o identificador de janela fornecido.

static CMFCToolBar* __stdcall FromHandlePermanent(HWND hwnd);

Parâmetros

hwnd
[in] O identificador da janela que deve ser procurado.

Valor de retorno

Um ponteiro para o objeto CMFCToolBar que contém o identificador de janela fornecido ou NULL se nenhum objeto CMFCToolBar correspondente existir.

Comentários

Esse método compartilhado examina cada barra de ferramentas no aplicativo para o objeto CMFCToolBar que contém o identificador de janela fornecido.

CMFCToolBar::GetAllButtons

Retorna uma lista somente leitura de botões em uma barra de ferramentas.

const CObList& GetAllButtons() const;

Valor de retorno

Uma referência constante a um objeto CObListClass, que contém uma coleção de objetos CMFCToolBarButtonClass.

CMFCToolBar::GetAllToolbars

Retorna uma lista somente leitura de todas as barras de ferramentas no aplicativo.

static const CObList& GetAllToolbars();

Valor de retorno

Uma referência constante a um objeto CObListClass que contém uma coleção de objetos CMFCToolBar.

CMFCToolBar::GetBasicCommands

Retorna uma lista somente leitura dos comandos básicos definidos no aplicativo.

static const CList<UINT,UINT>& GetBasicCommands();

Valor de retorno

Uma referência constante a um objeto CListClass que contém uma coleção de comandos básicos.

Comentários

Adicione comandos básicos chamando CMFCToolBar::AddBasicCommand ou CMFCToolBar::SetBasicCommands.

CMFCToolBar::GetButton

Retorna um ponteiro para o objeto CMFCToolBarButtonClass em um índice especificado.

CMFCToolBarButton* GetButton(int iIndex) const;

Parâmetros

iIndex
[in] Especifica o índice do botão a ser retornado.

Valor de retorno

Um ponteiro para o botão da barra de ferramentas se ele existir; ou NULL se não existir esse botão.

CMFCToolBar::GetButtonInfo

Retorna a ID de comando, o estilo e o índice de imagem do botão em um índice especificado.

void GetButtonInfo(
    int nIndex,
    UINT& nID,
    UINT& nStyle,
    int& iImage) const;

Parâmetros

nIndex
[in] Especifica o índice do botão na lista de botões na barra de ferramentas.

nID
[out] A ID de comando de um botão.

nStyle
[out] O estilo do botão.

iImage
[out] O índice da imagem para o botão.

Comentários

O método GetButtonInfo localiza um botão da barra de ferramentas no índice especificado e recupera a ID de comando, o estilo e o índice de imagem do botão.

Se o botão no índice especificado não existir, a estrutura definirá nID e nStyle como 0 e iImage como -1 quando o método retornar.

CMFCToolBar::GetButtonSize

Retorna as dimensões de cada botão na barra de ferramentas.

CSize GetButtonSize() const;

Valor de retorno

Um objeto CSizeClass que especifica as dimensões de cada botão na barra de ferramentas.

Comentários

Chama CMFCToolBar::SetSizes ou CMFCToolBar::SetLockedSizes para definir as dimensões de cada botão na barra de ferramentas.

CMFCToolBar::GetButtonStyle

Retorna o estilo atual do botão da barra de ferramentas localizado no índice especificado.

UINT GetButtonStyle(int nIndex) const;

Parâmetros

nIndex
[in] Especifica o índice de um botão de barra de ferramentas.

Valor de retorno

Um valor que especifica o estilo do botão da barra de ferramentas. . Confira Estilos de controle ToolBar para obter uma lista de estilos possíveis.

Comentários

Chame CMFCToolBar::SetButtonStyle para definir o estilo de um botão de barra de ferramentas

CMFCToolBar::GetButtonText

Retorna o rótulo de texto de um botão que tem um índice especificado.

CString GetButtonText(int nIndex) const;

void GetButtonText(
    int nIndex,
    CString& rString) const;

Parâmetros

nIndex
[in] O índice de um botão da barra de ferramentas.

rString
[out] O texto do rótulo do botão da barra de ferramentas.

Valor de retorno

O texto do rótulo do botão da barra de ferramentas.

Comentários

Chame CMFCToolBar::SetButtonText ou CMFCToolBar::SetToolBarBtnText para definir o rótulo de texto.

CMFCToolBar::GetColdImages

Retorna um ponteiro para a coleção de imagens de botão de barra de ferramentas inativas no aplicativo.

static CMFCToolBarImages* GetColdImages();

Valor de retorno

Um ponteiro para a coleção de imagens de botão de barra de ferramentas inativas.

Comentários

Imagens inativas são as imagens usadas quando o usuário não está interagindo com os botões da barra de ferramentas. Chame CMFCToolBar::LoadBitmapEx ou CMFCToolBar::LoadBitmap para carregar as imagens inativas.

CMFCToolBar::GetColumnWidth

Retorna a largura dos botões da barra de ferramentas.

virtual int GetColumnWidth() const;

Valor de retorno

Um valor que especifica a largura dos botões da barra de ferramentas.

Comentários

A estrutura chama esse método para calcular o layout da barra de ferramentas. Substitua esse método em uma classe derivada para especificar uma largura de coluna diferente para a barra de ferramentas.

CMFCToolBar::GetCommandButtons

Retorna uma lista de botões que têm uma ID de comando especificada de todas as barras de ferramentas no aplicativo.

static int GetCommandButtons(
    UINT uiCmd,
    CObList& listButtons);

Parâmetros

uiCmd
[in] A ID de comando dos botões.

listButtons
[out] Uma referência a um objeto CObListClass que recebe a lista de botões de barra de ferramentas.

Valor de retorno

O número de botões que têm a ID de comando especificada.

CMFCToolBar::GetCount

Retorna o número de botões e separadores na barra de ferramentas.

int GetCount() const;

Valor de retorno

O número de botões e separadores na barra de ferramentas.

CMFCToolBar::GetCustomizeButton

Recupera um ponteiro para o objeto CMFCCustomizeButton associado à barra de ferramentas.

CMFCCustomizeButton* GetCustomizeButton();

Valor de retorno

Um ponteiro para o objeto CMFCCustomizeButton associado à barra de ferramentas.

Comentários

Esse método recupera o botão Personalizar que aparece no final da barra de ferramentas. Use o método CMFCToolBar::EnableCustomizeButton para adicionar o botão Personalizar à barra de ferramentas.

Você pode chamar o método CMFCToolBar::IsExistCustomizeButton para determinar se a barra de ferramentas contém um objeto válido CMFCCustomizeButton.

CMFCToolBar::GetDefaultImage

Retorna o índice da imagem padrão para um botão de barra de ferramentas com uma ID de comando especificada.

static int GetDefaultImage(UINT uiID);

Parâmetros

uiID
[in] Especifica a ID de comando do botão.

Valor de retorno

O índice da imagem da barra de ferramentas na lista compartilhada de imagens.

Comentários

Use esse método compartilhado para recuperar o índice da imagem padrão para um botão de barra de ferramentas com a ID de comando especificada. O valor retornado é um índice na coleção compartilhada de imagens de botão da barra de ferramentas para todas as barras de ferramentas no aplicativo. Chame o método CMFCToolBar::GetImages a fim de obter um ponteiro para essa coleção.

CMFCToolBar::GetDisabledImages

Retorna um ponteiro para a coleção de imagens que são usadas em botões de barra de ferramentas desabilitados no aplicativo.

static CMFCToolBarImages* __stdcall GetDisabledImages();

Valor de retorno

Um ponteiro para a coleção de imagens de botão de barra de ferramentas desabilitadas.

Comentários

Carregue as imagens de botão da barra de ferramentas desabilitadas usando os métodos CMFCToolBarEditBoxButtonClass e CMFCToolBar::LoadBitmap.

CMFCToolBar::GetDisabledMenuImages

Retorna um ponteiro para a coleção de imagens que são usadas em botões de menu desabilitados no aplicativo.

static CMFCToolBarImages* __stdcall GetDisabledMenuImages();

Valor de retorno

Um ponteiro para a coleção de imagens de menu desabilitadas.

Comentários

Carregue as imagens desabilitadas usando o método CMFCToolBarEditBoxButtonClass.

CMFCToolBar::GetDroppedDownMenu

Recupera um ponteiro para o objeto de botão de menu que está atualmente exibindo seu submenu.

CMFCToolBarMenuButton* GetDroppedDownMenu(int* pIndex = NULL) const;

Parâmetros

pIndex
[out] Recebe o índice do botão na coleção de botões de barra de ferramentas.

Valor de retorno

Um ponteiro para o objeto de botão de menu que está exibindo seu submenu ou NULL se nenhum menu está exibindo seu submenu.

Comentários

Se esse método retornar um valor não nulo e pIndex não for NULL, o valor apontado por pIndex é definido como o índice do botão de menu na coleção de botões de barra de ferramentas.

CMFCToolBar::GetGrayDisabledButtons

Especifica se as imagens de botões desabilitados são versões esmaecidas das imagens de botão regulares ou tiradas da coleção de imagens de botão desabilitadas.

BOOL GetGrayDisabledButtons() const;

Valor de retorno

TRUE para diminuir as imagens de botões desabilitados; FALSE para obter imagens da coleção de imagens desabilitadas.

Comentários

Use CMFCToolBar::SetGrayDisabledButtons para alternar entre imagens esmaecidas e imagens da coleção de imagens desabilitadas.

CMFCToolBar::GetHighlightedButton

Retorna um ponteiro para o botão da barra de ferramentas que está realçado no momento.

CMFCToolBarButton* GetHighlightedButton() const;

Valor de retorno

Um ponteiro para um objeto de botão da barra de ferramentas; ou NULL se nenhum botão estiver realçado.

Comentários

Um botão da barra de ferramentas será realçado se ele tiver o foco do teclado. Um botão de barra de ferramentas também será realçado se os botões de barra de ferramentas forem controlados com frequência nesse aplicativo (para saber mais, confira CMFCToolBar::GetHotBorder e CMFCToolBar::SetHotBorder) e o mouse estiver apontando para ele quando nenhum botão de barra de ferramentas ou item de menu tiver o foco do teclado.

CMFCToolBar::GetHotBorder

Determina se os botões da barra de ferramentas são controlados com frequência. Se um botão for controlado com frequência, ele será realçado quando o mouse se mover por ele.

BOOL GetHotBorder() const;

Valor de retorno

TRUE se os botões da barra de ferramentas forem controlados com frequência; caso contrário, FALSE.

Comentários

Por padrão, os botões da barra de ferramentas são controlados com frequência.

CMFCToolBar::GetHotTextColor

Retorna a cor do texto dos botões de barra de ferramentas realçados.

static COLORREF GetHotTextColor();

Valor de retorno

Um valor COLORREF que representa a cor de texto realçado atual.

Comentários

Chame CMFCToolBar::SetHotTextColor para definir uma nova cor de texto para botões de barra de ferramentas realçados.

CMFCToolBar::GetHwndLastFocus

Retorna um identificador para a janela que tinha o foco de entrada pouco antes da barra de ferramentas.

HWND GetHwndLastFocus() const;

Valor de retorno

Um identificador para a janela que não é derivado de CMFCBaseToolBar Class, que anteriormente tinha o foco de entrada; ou NULL se não existir essa janela.

Comentários

Quando um controle CMFCToolBar recebe o foco de entrada, ele armazena um identificador para a janela que perdeu o foco a fim de poder restaurá-lo mais tarde.

CMFCToolBar::GetIgnoreSetText

Especifica se as chamadas para definir rótulos de botão são ignoradas.

BOOL GetIgnoreSetText() const;

Valor de retorno

TRUE se as chamadas para definir rótulos de botão forem ignoradas; caso contrário, FALSE.

Comentários

CMFCToolBar::GetImages

Retorna um ponteiro para a coleção de imagens de botão padrão no aplicativo.

static CMFCToolBarImages* GetImages();

Valor de retorno

Um ponteiro para o objeto CMFCToolBarImagesClass que contém a coleção de imagens padrão para todas as barras de ferramentas no aplicativo.

Comentários

Esse método compartilhado fornece acesso à coleção de todas as imagens padrão da barra de ferramentas para o aplicativo. Chame o método CMFCToolBar::LoadBitmap para adicionar imagens à coleção.

CMFCToolBar::GetImageSize

Retorna o tamanho atual das imagens de botão da barra de ferramentas.

CSize GetImageSize() const;

Valor de retorno

Um objeto CSize Class que representa o tamanho atual das imagens de botão da barra de ferramentas.

CMFCToolBar::GetImagesOffset

Retorna o deslocamento de índice usado para localizar as imagens do botão da barra de ferramentas para essa barra de ferramentas na lista global de imagens de botão da barra de ferramentas.

int GetImagesOffset() const;

Valor de retorno

O deslocamento de índice das imagens da barra de ferramentas.

Comentários

Todas as imagens padrão da barra de ferramentas são armazenadas na lista CMFCToolBarImagesClass global. As imagens de cada botão na barra de ferramentas são armazenadas consecutivamente nessa lista. Para calcular o índice da imagem, adicione o índice do botão na barra de ferramentas ao deslocamento do início da lista de imagens desse botão da barra de ferramentas.

Chame CMFCToolBar::ButtonToIndex para obter o índice de um botão de barra de ferramentas concedido a um ponteiro para o botão.

Chame CMFCToolBar::GetImages para obter um ponteiro para a coleção de imagens da barra de ferramentas.

CMFCToolBar::GetInvalidateItemRect

Recupera a região da área do cliente que precisa ser redesenhada para o botão no índice fornecido.

virtual void GetInvalidateItemRect(
    int nIndex,
    LPRECT lpRect) const;

Parâmetros

nIndex
[in] O índice do botão para o qual recuperar a área de cliente.

lpRect
[out] Um ponteiro para um objeto RECT que recebe a região da área de cliente.

Comentários

O parâmetro lpRect não pode ser NULL. Se nenhum botão existir no índice fornecido, lpRect receberá um objeto RECT inicializado como zero.

CMFCToolBar::GetItemID

Retorna a ID de comando do botão da barra de ferramentas em um índice especificado.

UINT GetItemID(int nIndex) const;

Parâmetros

nIndex
[in] Especifica o índice do botão de barra de ferramentas.

Valor de retorno

A ID de comando do botão de barra de ferramentas; ou zero se o botão com o índice especificado não existir.

CMFCToolBar::GetItemRect

Retorna o retângulo delimitador do botão em um índice especificado.

virtual void GetItemRect(
    int nIndex,
    LPRECT lpRect) const;

Parâmetros

nIndex
[in] Especifica o índice de um botão de barra de ferramentas.

lpRect
[out] Um ponteiro para o objeto CRect que recebe as coordenadas do retângulo delimitador de imagem.

Comentários

O objeto CRect para o qual os pontos lpRect serão definidos como 0 se um botão no índice especificado não existir.

Exemplo

O exemplo a seguir demonstra como usar o método GetItemRect da classe CMFCToolBar. Este snippet de código faz parte do exemplo de demonstração do IE.

CMFCToolBar m_wndToolBar;
CRect rectToolBar;
m_wndToolBar.GetItemRect(0, &rectToolBar);

CMFCToolBar::GetLargeColdImages

Retorna um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas inativas no aplicativo.

static CMFCToolBarImages* GetLargeColdImages();

Valor de retorno

Um ponteiro para a coleção de imagens grandes inativas.

Comentários

Imagens inativas são as imagens usadas quando o usuário não está interagindo com os botões da barra de ferramentas. Chame CMFCToolBar::LoadBitmapEx para carregar as imagens grandes inativas.

CMFCToolBar::GetLargeDisabledImages

Retorna um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas desabilitadas no aplicativo.

static CMFCToolBarImages* GetLargeDisabledImages();

Valor de retorno

Um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas desabilitadas.

Comentários

Imagens grandes são versões grandes das imagens de botão de barra de ferramentas regulares. Chame CMFCToolBar::LoadBitmapEx ou CMFCToolBar::LoadBitmap para carregar as imagens grandes.

CMFCToolBar::GetLargeImages

Retorna um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas no aplicativo.

static CMFCToolBarImages* GetLargeImages();

Valor de retorno

Um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas.

Comentários

Imagens grandes são versões grandes das imagens de botão de barra de ferramentas regulares. Chame CMFCToolBar::LoadBitmapEx para carregar as imagens grandes.

CMFCToolBar::GetLockedColdImages

Retorna um ponteiro para a coleção de imagens inativas bloqueadas na barra de ferramentas.

CMFCToolBarImages* GetLockedColdImages();

Valor de retorno

Um ponteiro para a coleção de imagens inativas bloqueadas ou NULL se a barra de ferramentas não estiver bloqueada.

Comentários

Imagens bloqueadas são versões das imagens de botão de barra de ferramentas regulares que a estrutura usa quando o usuário não pode personalizar a barra de ferramentas. Imagens inativas são as imagens usadas quando o usuário não está interagindo com os botões da barra de ferramentas.

Esse método retornará NULL se a barra de ferramentas não estiver bloqueada. Esse método também gerará uma falha de instrução assert em builds de depuração se a barra de ferramentas não estiver bloqueada. Para saber mais sobre barras de ferramentas bloqueadas, confira CMFCToolBar::IsLocked.

Chame o método CMFCToolBar::LoadBitmapEx para carregar as imagens inativas bloqueadas.

CMFCToolBar::GetLockedDisabledImages

Retorna um ponteiro para a coleção de imagens desabilitadas bloqueadas na barra de ferramentas.

CMFCToolBarImages* GetLockedDisabledImages();

Valor de retorno

Um ponteiro para a coleção de imagens desabilitadas bloqueadas ou NULL se a barra de ferramentas não estiver bloqueada.

Comentários

Imagens bloqueadas são versões das imagens de botão de barra de ferramentas regulares que a estrutura usa quando o usuário não pode personalizar a barra de ferramentas. Imagens desabilitadas são imagens que a estrutura usa quando um botão tem o estilo TBBS_DISABLED.

Esse método retornará NULL se a barra de ferramentas não estiver bloqueada. Esse método também gerará uma falha de instrução assert em builds de depuração se a barra de ferramentas não estiver bloqueada. Para saber mais sobre barras de ferramentas bloqueadas, confira CMFCToolBar::IsLocked.

Chame o método CMFCToolBar::LoadBitmapEx para carregar as imagens desabilitadas bloqueadas.

CMFCToolBar::GetLockedImages

Retorna um ponteiro para a coleção de imagens de botão bloqueadas na barra de ferramentas.

CMFCToolBarImages* GetLockedImages();

Valor de retorno

Um ponteiro para a coleção de imagens de botão de barra de ferramentas bloqueadas ou NULL se a barra de ferramentas não estiver bloqueada.

Comentários

Imagens bloqueadas são versões das imagens de botão de barra de ferramentas regulares que a estrutura usa quando o usuário não pode personalizar a barra de ferramentas.

Esse método retornará NULL se a barra de ferramentas não estiver bloqueada. Esse método também gerará uma falha de instrução assert em builds de depuração se a barra de ferramentas não estiver bloqueada. Para saber mais sobre barras de ferramentas bloqueadas, confira CMFCToolBar::IsLocked.

CMFCToolBar::GetLockedImageSize

Retorna o tamanho padrão das imagens da barra de ferramentas bloqueadas.

CSize GetLockedImageSize() const;

Valor de retorno

Uma estrutura CSize que especifica o tamanho das imagens da barra de ferramentas bloqueadas ou uma estrutura vazia CSize se a barra de ferramentas não estiver bloqueada.

Comentários

Imagens bloqueadas são versões das imagens de botão de barra de ferramentas regulares que a estrutura usa quando o usuário não pode personalizar a barra de ferramentas.

Esse método retornará uma estrutura CSize com largura zero e altura zero se a barra de ferramentas não estiver bloqueada. Esse método também gerará uma falha de instrução assert em builds de depuração se a barra de ferramentas não estiver bloqueada. Para saber mais sobre barras de ferramentas bloqueadas, confira CMFCToolBar::IsLocked.

Chame o método CMFCToolBar::SetLockedSizes para especificar o tamanho da imagem bloqueada.

CMFCToolBar::GetLockedMenuImages

Retorna um ponteiro para a coleção de imagens de menu de barra de ferramentas bloqueadas na barra de ferramentas.

CMFCToolBarImages* GetLockedMenuImages();

Valor de retorno

Um ponteiro para a coleção de imagens de menu de barra de ferramentas bloqueadas ou NULL se a barra de ferramentas não estiver bloqueada.

Comentários

Imagens bloqueadas são versões das imagens de menu de barra de ferramentas regulares que a estrutura usa quando o usuário não pode personalizar a barra de ferramentas.

Esse método retornará NULL se a barra de ferramentas não estiver bloqueada. Esse método também gerará uma falha de instrução assert em builds de depuração se a barra de ferramentas não estiver bloqueada. Para saber mais sobre barras de ferramentas bloqueadas, confira CMFCToolBar::IsLocked.

Chame o método CMFCToolBar::LoadBitmapEx para carregar as imagens de menu bloqueadas.

CMFCToolBar::GetMenuButtonSize

Retorna o tamanho dos botões de menu no aplicativo.

static CSize GetMenuButtonSize();

Valor de retorno

Um objeto CSize que representa o tamanho dos botões de menu, em pixels.

Comentários

O tamanho dos botões de menu nas barras de ferramentas é mantido como uma variável global e pode ser recuperado por esse método estático.

Chame CMFCToolBar::SetMenuSizes para definir essa variável global.

CMFCToolBar::GetMenuImages

Retorna um ponteiro para a coleção de imagens de botão do menu no aplicativo.

static CMFCToolBarImages* GetMenuImages();

Valor de retorno

Um ponteiro para a coleção de imagens de menu.

Comentários

Chame o método CMFCToolBar::LoadBitmapEx para carregar as imagens de menu.

Chame o método CMFCToolBar::SetMenuSizes para definir o tamanho dos botões e suas imagens.

CMFCToolBar::GetMenuImageSize

Retorna o tamanho das imagens de botão de menu no aplicativo.

static CSize GetMenuImageSize();

Valor de retorno

Um objeto CSize que representa o tamanho das imagens de menu.

Comentários

Esse método retorna o tamanho das imagens nos botões de menu da barra de ferramentas que é mantido como uma variável global. Chame CMFCToolBar::SetMenuSizes para definir essa variável global.

CMFCToolBar::GetOrigButtons

Recupera a coleção de botões não personalizados da barra de ferramentas.

const CObList& GetOrigButtons() const;

Valor de retorno

Uma referência à lista de botões não personalizados da barra de ferramentas.

Comentários

A estrutura cria uma cópia dos botões da barra de ferramentas antes de serem personalizados pelo usuário. O método CMFCToolBar::SetButtons adiciona uma cópia de cada botão na matriz fornecida à lista de botões originais. O método CMFCToolBar::RestoreOriginalState restaura o estado original da barra de ferramentas carregando-a do arquivo de recurso.

Para definir a lista de botões originais da barra de ferramentas, chame o método CMFCToolBar::SetOrigButtons.

CMFCToolBar::GetOrigResetButtons

Recupera a coleção de botões de redefinição não personalizados da barra de ferramentas.

const CObList& GetOrigResetButtons() const;

Valor de retorno

Uma referência à lista de botões de redefinição não personalizados da barra de ferramentas.

Comentários

Quando o usuário seleciona o botão Redefinir durante o modo de personalização, a estrutura usa esse método para restaurar botões que foram removidos da barra de ferramentas.

O método CMFCToolBar::SetButtons adiciona uma cópia de cada botão de barra de ferramentas à lista de botões de redefinição originais depois de chamar o método CMFCToolBar::OnReset. Você pode substituir o método CMFCToolBar::OnReset para personalizar a aparência dos botões depois que o usuário pressionar o botão Redefinir.

CMFCToolBar::GetResourceID

Recupera a ID do recurso da barra de ferramentas.

UINT GetResourceID() const;

Valor de retorno

A ID do recurso da barra de ferramentas.

Comentários

Chame o método CMFCToolBar::LoadToolBarEx para definir a ID do recurso da barra de ferramentas.

CMFCToolBar::GetRouteCommandsViaFrame

Determina qual objeto, o quadro pai ou o proprietário, envia comandos para a barra de ferramentas.

BOOL GetRouteCommandsViaFrame();

Valor de retorno

Diferente de zero se o quadro pai enviar comandos para a barra de ferramentas; 0 se o proprietário enviar comandos para a barra de ferramentas.

Comentários

Por padrão, o quadro pai envia comandos para a barra de ferramentas. Chame CMFCToolBar::SetRouteCommandsViaFrame para alterar esse comportamento.

Se esse método retornar um valor diferente de zero, você poderá recuperar um ponteiro para o objeto de quadro pai usando o método CMFCToolBar::GetCommandTarget. Confira o exemplo VisualStudioDemo para obter um exemplo que usa esse método.

CMFCToolBar::GetRowHeight

Retorna a altura dos botões da barra de ferramentas.

virtual int GetRowHeight() const;

Valor de retorno

A altura dos botões da barra de ferramentas, em pixels.

Comentários

A estrutura chama esse método para calcular o layout da barra de ferramentas. Substitua esse método em uma classe derivada para especificar uma altura diferente para a barra de ferramentas.

CMFCToolBar::GetShowTooltips

Especifica se as dicas de ferramenta são exibidas para os botões da barra de ferramentas.

static BOOL GetShowTooltips();

Valor de retorno

TRUE se as dicas de ferramenta forem mostradas para botões da barra de ferramentas; caso contrário, FALSE.

Comentários

Por padrão, as dicas de ferramenta são mostradas. Você pode alterar esse sinalizador estático chamando CMFCToolBar::SetShowTooltips.

CMFCToolBar::GetSiblingToolBar

Recupera o irmão da barra de ferramentas.

CMFCToolBar* GetSiblingToolBar();

Valor de retorno

Um ponteiro para a barra de ferramentas irmã.

Comentários

Para saber mais sobre como habilitar os botões Mostrar Botões em Uma Linha e Mostrar Botões em Duas Linhas, confira CMFCToolBar::SetSiblingToolBar.

CMFCToolBar::GetUserImages

Retorna um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas definidas pelo usuário no aplicativo.

static CMFCToolBarImages* GetUserImages();

Valor de retorno

Um ponteiro para a coleção de imagens grandes de botão de barra de ferramentas para todas as barras de ferramentas definidas pelo usuário no aplicativo.

Comentários

Chame o método CMFCToolBar::SetUserImages para definir a coleção de imagens definidas pelo usuário no aplicativo.

CMFCToolBar::HitTest

Retorna o índice do botão da barra de ferramentas que está localizado na posição especificada.

virtual int HitTest(CPoint point);

Parâmetros

point
[in] O ponto a ser testado, em coordenadas do cliente.

Valor de retorno

O índice do botão que está localizado na posição especificada ou -1 se não houver esse botão ou se o botão for um separador.

CMFCToolBar::InsertButton

Insere um botão na barra de ferramentas.

virtual int InsertButton(
    const CMFCToolBarButton& button,
    INT_PTR iInsertAt=-1);

virtual int InsertButton(
    CMFCToolBarButton* pButton,
    int iInsertAt=-1);

Parâmetros

button
[in] Especifica o botão a ser inserido.

iInsertAt
[in] Especifica a posição baseada em zero na qual inserir o botão.

Valor de retorno

A posição na qual o botão foi inserido ou -1 se ocorrer um erro.

Comentários

Se iInsertAt for -1, esse método adicionará o botão ao final da lista de botões de barra de ferramentas.

Chame o método CMFCToolBar::InsertSeparator para inserir um separador na barra de ferramentas.

CMFCToolBar::InsertSeparator

Insere um separador na barra de ferramentas.

virtual int InsertSeparator(INT_PTR iInsertAt=-1);

Parâmetros

iInsertAt
[in] Especifica a posição baseada em zero na qual inserir o separador. Esse parâmetro precisa ser maior que 0.

Valor de retorno

A posição na qual o separador foi inserido ou -1 se ocorrer um erro.

Comentários

Chame esse método para inserir um separador entre dois botões existentes. Se iInsertAt for -1, esse método adicionará o separador ao final da lista de botões de barra de ferramentas.

Você não pode usar esse método para adicionar um separador a uma barra de ferramentas vazia.

Chame o método CMFCToolBar::InsertButton para inserir um botão na barra de ferramentas.

CMFCToolBar::InvalidateButton

Invalida a área do cliente do botão da barra de ferramentas que existe no índice fornecido.

CMFCToolBarButton* InvalidateButton(int nIndex);

Parâmetros

nIndex
[in] O índice baseado em zero do botão na barra de ferramentas.

Valor de retorno

Um ponteiro para o objeto CMFCToolBarButton que existe no índice fornecido ou NULL se nenhum objeto desse tipo existir.

Comentários

A estrutura chama esse método quando atualiza a área de cliente associada a um botão de barra de ferramentas. Ele chama o método CWnd::InvalidateRect com o retângulo do cliente do objeto CMFCToolBarButton que existe no índice fornecido.

CMFCToolBar::IsAddRemoveQuickCustomize

Determina se um usuário pode adicionar ou remover botões da barra de ferramentas usando a opção de menu Personalizar.

BOOL IsAddRemoveQuickCustomize();

Valor de retorno

TRUE se um usuário puder usar a opção de menu Personalizar para modificar a barra de ferramentas; caso contrário, FALSE.

Comentários

CMFCToolBar::IsAltCustomizeMode

Especifica se a personalização rápida está sendo usada para arrastar um botão. Quando a personalização rápida está habilitada, um usuário pode pressionar e segurar a tecla Alt e arrastar um botão para um novo local.

static BOOL __stdcall IsAltCustomizeMode();

Valor de retorno

TRUE se a personalização rápida estiver sendo usada para arrastar um botão; caso contrário, FALSE.

Comentários

CMFCToolBar::IsAutoGrayInactiveImages

Especifica se a geração automática de imagens de botão inativas (não realçadas) está habilitada.

static BOOL IsAutoGrayInactiveImages();

Valor de retorno

TRUE se a opção de diminuir automaticamente as imagens inativas estiver habilitada; caso contrário, FALSE.

Comentários

Você pode habilitar ou desabilitar o esmaecimento automático de imagens inativas chamando CMFCToolBar::AutoGrayInactiveImages.

CMFCToolBar::IsBasicCommand

Determina se um comando está na lista de comandos básicos.

static BOOL IsBasicCommand(UINT uiCmd);

Parâmetros

uiCmd
[in] Especifica o comando a ser verificado.

Valor de retorno

TRUE se o comando especificado pertencer à lista de comandos básicos; caso contrário, FALSE.

Comentários

Este método estático determina se o comando especificado por uiCmd pertence à lista global de comandos básicos. Você pode alterar a lista de comandos básicos chamando CMFCToolBar::AddBasicCommand ou CMFCToolBar::SetBasicCommands.

CMFCToolBar::IsButtonExtraSizeAvailable

Determina se a barra de ferramentas pode exibir botões que têm bordas estendidas.

virtual BOOL IsButtonExtraSizeAvailable() const;

Valor de retorno

TRUE se a barra puder exibir botões com o tamanho extra da borda; caso contrário, FALSE.

Comentários

O objeto da barra de ferramentas retornará TRUE se puder exibir botões com bordas estendidas. Um botão de barra de ferramentas chama esse método quando ele manipula a notificação CMFCToolBarButton::OnChangeParentWnd e definirá seu sinalizador de tamanho de borda extra interno adequadamente. Esse sinalizador interno pode ser recuperado mais tarde chamando CMFCToolBarButton::IsExtraSize.

Substitua esse método em uma classe derivada CMFCToolBar e retorne TRUE se a barra puder exibir os botões de barra de ferramentas com o tamanho extra da borda e, do contrário, retornar FALSE. A implementação padrão retorna TRUE.

CMFCToolBar::IsButtonHighlighted

Determina se o botão especificado está realçado.

BOOL IsButtonHighlighted(int iButton) const;

Parâmetros

iButton
[in] Especifica o índice de um botão de barra de ferramentas.

Valor de retorno

TRUE se o botão especificado estiver realçado; caso contrário, FALSE.

Comentários

CMFCToolBar::IsCommandPermitted

Determina se um comando é permitido.

static BOOL IsCommandPermitted(UINT uiCmd);

Parâmetros

uiCmd
[in] Especifica o comando a ser verificado.

Valor de retorno

TRUE se o comando especificado for permitido; do contrário, FALSE.

Comentários

Este método estático determina se o comando especificado por uiCmd pertence à lista global de comandos não permitidos.

Você pode alterar a lista de comandos não permitidos chamando CMFCToolBar::SetNonPermittedCommands.

CMFCToolBar::IsCommandRarelyUsed

Determina se um comando raramente é usado.

static BOOL IsCommandRarelyUsed(UINT uiCmd);

Parâmetros

uiCmd
[in] Especifica o comando a ser verificado.

Valor de retorno

TRUE se o comando especificado for raramente usado; caso contrário, FALSE.

Comentários

O método IsCommandRarelyUsed retorna FALSE quando uma ou mais das seguintes condições ocorrem:

  • O comando especificado pertence à lista de comandos básicos

  • O comando especificado é um dos comandos padrão

  • A estrutura está no modo de personalização

  • A lista de comandos básicos está vazia

  • Mais de 20% das chamadas de comando são chamadas para o comando especificado.

CMFCToolBar::IsCustomizeMode

Especifica se a estrutura da barra de ferramentas está no modo de personalização.

static BOOL IsCustomizeMode();

Valor de retorno

TRUE se a estrutura estiver no modo de personalização; caso contrário, FALSE.

Comentários

Você pode alternar o modo de personalização chamando CMFCToolBar::SetCustomizeMode.

A estrutura altera o modo quando o usuário invoca a caixa de diálogo de personalização ( CMFCToolBarsCustomizeDialog Class).

CMFCToolBar::IsDragButton

Determina se um botão da barra de ferramentas está sendo arrastado.

BOOL IsDragButton(const CMFCToolBarButton* pButton) const;

Parâmetros

pButton
[in] Ponteiro para um botão de barra de ferramentas.

Valor de retorno

TRUE se o botão especificado estiver sendo arrastado; caso contrário, FALSE.

Comentários

CMFCToolBar::IsExistCustomizeButton

Determina se a barra de ferramentas contém o botão Personalizar.

BOOL IsExistCustomizeButton();

Valor de retorno

TRUE se a barra de ferramentas contiver o botão Personalizar; caso contrário, FALSE.

Comentários

Se esse método retornar TRUE, o método CMFCToolBar::GetCustomizeButton retornará um ponteiro para o botão Personalizar que aparece no final da barra de ferramentas.

Use o método CMFCToolBar::EnableCustomizeButton para adicionar o botão Personalizar à barra de ferramentas.

CMFCToolBar::IsFloating

Determina se a barra de ferramentas está flutuando.

virtual BOOL IsFloating() const;

Valor de retorno

TRUE se a barra de ferramentas estiver flutuando; caso contrário, FALSE.

CMFCToolBar::IsLargeIcons

Especifica se as barras de ferramentas no aplicativo exibem ícones grandes no momento.

static BOOL IsLargeIcons();

Valor de retorno

TRUE se o aplicativo estiver usando ícones grandes; caso contrário, FALSE.

Comentários

Chame CMFCToolBar::SetLargeIcons para alternar entre ícones grandes e ícones regulares.

A estrutura altera automaticamente o modo quando o usuário alterna a caixa de seleção Ícones grandes na página Opções da caixa de diálogo Personalização.

CMFCToolBar::IsLastCommandFromButton

Determina se o comando executado mais recentemente foi enviado do botão da barra de ferramentas especificado.

static BOOL IsLastCommandFromButton(CMFCToolBarButton* pButton);

Parâmetros

pButton
[in] Ponteiro para botão.

Valor de retorno

TRUE se o último comando foi enviado do botão especificado por pButton; caso contrário, FALSE.

Comentários

Esse método obtém um ponteiro para uma MSGStructure chamando CWnd::GetCurrentMessage. Em seguida, ele compara o HWND do botão com os membros MSG::hwnd e MSG::lParam para determinar se o botão era a origem do comando.

CMFCToolBar::IsLocked

Determina se a barra de ferramentas está bloqueada.

BOOL IsLocked() const;

Valor de retorno

TRUE se a barra de ferramentas estiver bloqueada; caso contrário, FALSE.

Comentários

Esse método retorna TRUE quando o usuário não pode executar tarefas de personalização, por exemplo, reposicionar botões da barra de ferramentas.

As barras de ferramentas bloqueadas usam listas de imagens separadas. Para saber mais sobre essas listas de imagens, confira CMFCToolBar::LoadBitmapEx.

CMFCToolBar::IsOneRowWithSibling

Determina se a barra de ferramentas e sua barra de ferramentas irmã estão posicionadas na mesma linha.

BOOL IsOneRowWithSibling();

Valor de retorno

TRUE se a barra de ferramentas e sua irmã estiverem posicionadas na mesma linha; caso contrário, FALSE.

Comentários

O método CMFCCustomizeButton::CreatePopupMenu chama esse método para determinar como mostrar o menu pop-up Personalizar. Se esse método retornar TRUE, a estrutura exibirá o botão Mostrar Botões em Uma Linha. Caso contrário, a estrutura exibirá o botão Mostrar Botões em Duas Linhas.

Normalmente, você não precisa usar esse método. Para habilitar os botões Mostrar em Uma Linha ou Mostrar Botões nos botões Duas Linhas, chame CMFCToolBar::SetSiblingToolBar.

CMFCToolBar::IsResourceChanged

virtual BOOL IsResourceChanged() const;

Valor de retorno

Comentários

CMFCToolBar::IsSibling

BOOL IsSibling();

Valor de retorno

Comentários

CMFCToolBar::IsUserDefined

Especifica se a barra de ferramentas foi definida pelo usuário.

BOOL IsUserDefined() const;

Valor de retorno

TRUE se a barra de ferramentas foi criada pelo usuário; caso contrário, FALSE.

CMFCToolBar::LoadBitmap

Carrega imagens da barra de ferramentas dos recursos do aplicativo.

virtual BOOL LoadBitmap(
    UINT uiResID,
    UINT uiColdResID=0,
    UINT uiMenuResID=0,
    BOOL bLocked=FALSE,
    UINT uiDisabledResID=0,
    UINT uiMenuDisabledResID=0);

Parâmetros

uiResID
[in] A ID do recurso do bitmap que se refere às imagens da barra de ferramentas de utilização frequente.

uiColdResID
[in] A ID do recurso do bitmap que se refere às imagens da barra de ferramentas com pouca utilização.

uiMenuResID
[in] A ID do recurso do bitmap que se refere às imagens de menu regulares.

bLocked
[in] TRUE para bloquear a barra de ferramentas; caso contrário, FALSE.

uiDisabledResID
[in] A ID do recurso do bitmap que se refere às imagens da barra de ferramentas desabilitadas.

uiMenuDisabledResID
[in] A ID do recurso do bitmap que se refere às imagens de menu desabilitadas.

Valor de retorno

Um valor diferente de zero, se o método tiver êxito. Caso contrário, 0.

Comentários

O método CMFCToolBar::LoadToolBarEx chama esse método para carregar as imagens associadas à barra de ferramentas. Substitua esse método para executar o carregamento personalizado de recursos de imagem.

Chame o método LoadBitmapEx para carregar imagens adicionais depois de criar a barra de ferramentas.

CMFCToolBar::LoadBitmapEx

virtual BOOL LoadBitmapEx(
    CMFCToolBarInfo& params,
    BOOL bLocked = FALSE);

Parâmetros

[in] params
[in] bLocked\

Valor de retorno

Comentários

CMFCToolBar::LoadLargeIconsState

static BOOL __stdcall LoadLargeIconsState(LPCTSTR lpszProfileName = NULL);

Parâmetros

[in] lpszProfileName\

Valor de retorno

Comentários

CMFCToolBar::LoadParameters

Carrega opções de barra de ferramentas globais do registro do Windows.

static BOOL LoadParameters(LPCTSTR lpszProfileName=NULL);

Parâmetros

lpszProfileName
[in] Especifica o caminho relativo da chave do Registro do Windows.

Valor de retorno

Um valor diferente de zero, se o método tiver êxito. Caso contrário, 0.

Comentários

Esse método carrega parâmetros globais, como o tipo de animação do menu, o estilo de sombra do menu e se deve exibir ícones grandes do Registro do Windows.

O método CWinAppEx::LoadState chama esse método como parte do processo de inicialização do aplicativo.

CMFCToolBar::LoadState

Carrega as informações de estado da barra de ferramentas do registro do Windows.

virtual BOOL LoadState(
    LPCTSTR lpszProfileName=NULL,
    int nIndex=-1,
    UINT uiID=(UINT)-1);

Parâmetros

lpszProfileName
[in] Especifica o caminho relativo da chave do Registro do Windows.

nIndex
[in] Especifica a ID de controle da barra de ferramentas.

uiID
[in] Especifica a ID do recurso da barra de ferramentas.

Valor de retorno

Um valor diferente de zero, se o método tiver êxito. Caso contrário, 0.

Comentários

A estrutura chama esse método como parte do processo de inicialização do aplicativo. Para obter mais informações, consulte CWinAppEx::LoadState.

CMFCToolBar::LoadToolBar

Carrega a barra de ferramentas dos recursos do aplicativo.

virtual BOOL LoadToolBar(
    UINT uiResID,
    UINT uiColdResID=0,
    UINT uiMenuResID=0,
    BOOL bLocked=FALSE,
    UINT uiDisabledResID=0,
    UINT uiMenuDisabledResID=0,
    UINT uiHotResID=0);

Parâmetros

uiResID
[in] A ID do recurso da barra de ferramentas.

uiColdResID
[in] A ID do recurso do bitmap que se refere às imagens da barra de ferramentas com pouca utilização.

uiMenuResID
[in] A ID do recurso do bitmap que se refere às imagens de menu regulares.

bLocked
[in] Um valor booliano que especifica se a barra de ferramentas está bloqueada ou não. Se esse parâmetro for TRUE, a barra de ferramentas será bloqueada. Caso contrário, a barra de ferramentas não estará bloqueada.

uiDisabledResID
[in] A ID do recurso do bitmap que se refere às imagens da barra de ferramentas desabilitadas.

uiMenuDisabledResID
[in] A ID do recurso do bitmap que se refere às imagens de menu desabilitadas.

uiHotResID
[in] A ID do recurso do bitmap que se refere às imagens da barra de ferramentas de utilização frequente.

Valor de retorno

Um valor diferente de zero, se o método tiver êxito. Caso contrário, 0.

Comentários

A estrutura chama esse método durante a inicialização para carregar as imagens associadas à barra de ferramentas.

Exemplo

O seguinte exemplo demonstra como usar o método LoadToolBar na classe CMFCToolBar. Este snippet de código faz parte do exemplo de demonstração do IE.

CMFCToolBar m_wndToolBar;
// The this pointer points to CMainFrame class which extends the CFrameWnd class.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_TRANSPARENT) ||
    !m_wndToolBar.LoadToolBar(IDR_MAINFRAME, uiToolbarColdID, uiMenuID,
                              FALSE /* Not locked */, 0, 0, uiToolbarHotID))
{
   TRACE0("Failed to create toolbar\n");
   return -1; // fail to create
}

CMFCToolBar::LoadToolBarEx

Carrega a barra de ferramentas dos recursos do aplicativo usando a classe auxiliar CMFCToolBarInfo para permitir que o aplicativo use imagens grandes.

virtual BOOL LoadToolBarEx(
    UINT uiToolbarResID,
    CMFCToolBarInfo& params,
    BOOL bLocked=FALSE);

Parâmetros

uiToolbarResID
[in] A ID do recurso da barra de ferramentas.

params
[in] Uma referência a um objeto CMFCToolBarInfo que contém as IDs de recurso para as imagens da barra de ferramentas.

bLocked
[in] Um valor booliano que especifica se a barra de ferramentas está bloqueada ou não. Se esse parâmetro for TRUE, a barra de ferramentas será bloqueada. Caso contrário, a barra de ferramentas não estará bloqueada.

Valor de retorno

Um valor diferente de zero, se o método tiver êxito. Caso contrário, 0.

Comentários

Chame esse método para carregar imagens da barra de ferramentas dos recursos do aplicativo.

CMFCToolBar::m_dblLargeImageRatio

Especifica a proporção entre a dimensão (altura ou largura) de imagens grandes e a dimensão de imagens regulares.

AFX_IMPORT_DATA static double m_dblLargeImageRatio;

Comentários

A taxa padrão é de 2. Você pode alterar esse valor para tornar as imagens grandes da barra de ferramentas maiores ou menores.

A estrutura usa esse membro de dados quando você não especifica um conjunto de imagens grandes. Por exemplo, se você fornecer apenas o conjunto de imagens pequenas com tamanho 16x16 e quiser que as imagens grandes tenham o tamanho 24x24, defina esse membro de dados como 1,5.

CMFCToolBar::NextMenu

virtual BOOL NextMenu();

Valor de retorno

Comentários

CMFCToolBar::OnBeforeRemoveButton

virtual BOOL OnBeforeRemoveButton(
    CMFCToolBarButton* pButton,
    DROPEFFECT dropEffect);

Parâmetros

pButton
[in] Não é usado.

dropEffect
[in] Não é usado.

Valor de retorno

Comentários

CMFCToolBar::OnChangeHot

Chamado pela estrutura quando um usuário seleciona um botão na barra de ferramentas.

virtual void OnChangeHot(int iHot);

Parâmetros

iHot
[in] Especifica o índice do botão da barra de ferramentas selecionado; ou -1 se nenhum botão da barra de ferramentas for selecionado.

Comentários

Substitua esse método para processar notificações de que o usuário selecionou um botão em uma barra de ferramentas.

CMFCToolBar::OnChangeVisualManager

virtual void OnChangeVisualManager();

Comentários

CMFCToolBar::OnFillBackground

Chamado pela estrutura de CBasePane::DoPaint para preencher o segundo plano da barra de ferramentas.

virtual void OnFillBackground(CDC* pDC);

Parâmetros

pDC
[in] Um ponteiro para um contexto de dispositivo.

Comentários

CMFCToolBar::DoPaint chama esse método quando a tela de fundo de uma barra de ferramentas foi preenchida. A implementação padrão não tem ação.

Substitua esse método para desenhar tela de fundo personalizada em classes derivadas.

CMFCToolBar::OnGlobalFontsChanged

virtual void OnGlobalFontsChanged();

Comentários

CMFCToolBar::OnReset

Restaura o estado original da barra de ferramentas.

virtual void OnReset();

Comentários

Substitua esse método para lidar com a notificação sobre uma redefinição da barra de ferramentas.

A implementação padrão não tem ação. Substitua OnReset em uma classe derivada de CMFCToolBar quando a barra de ferramentas tem botões fictícios que precisem ser substituídos quando a barra de ferramentas retorna ao estado original.

CMFCToolBar::OnSetAccData

virtual BOOL OnSetAccData(long lVal);

Parâmetros

[in] lVal\

Valor de retorno

Comentários

CMFCToolBar::OnSetDefaultButtonText

Restaura o estado padrão do texto de um botão de barra de ferramentas.

virtual BOOL OnSetDefaultButtonText(CMFCToolBarButton* pButton);

Parâmetros

pButton
[in] Aponta para um botão cujo texto está sendo definido.

Valor de retorno

TRUE se o texto foi restaurado com êxito; caso contrário, FALSE.

Comentários

Substitua esse método para processar notificações de que o texto de um botão de barra de ferramentas está sendo alterado para seu padrão.

A implementação padrão carrega o texto de um botão dos recursos do aplicativo.

CMFCToolBar::OnUserToolTip

Chamado pela estrutura quando a dica de ferramenta de um botão está prestes a ser exibida.

virtual BOOL OnUserToolTip(
    CMFCToolBarButton* pButton,
    CString& strTTText) const;

Parâmetros

pButton
[in] Aponta para um botão de barra de ferramentas para o qual uma dica de ferramenta deve ser exibida.

strTTText
[out] Uma referência ao objeto CString que recebe o texto da dica de ferramenta.

Valor de retorno

TRUE se strTTText foi populado com texto de dica de ferramenta; caso contrário, FALSE.

Comentários

A estrutura chama esse método quando a dica de ferramenta para um botão de barra de ferramentas está prestes a ser exibida. Se OnUserToolTip retornar TRUE, a estrutura exibirá uma dica de ferramenta que contém o texto retornado por OnUserToolTip. strTTText Caso contrário, a dica de ferramenta conterá o texto do botão.

Substitua OnUserToolTip para personalizar dicas de ferramentas de botões de barra de ferramentas. A implementação padrão chama CMFCToolBar::OnUserToolTip para obter o texto da dica de ferramenta.

CMFCToolBar::PrevMenu

virtual BOOL PrevMenu();

Valor de retorno

Comentários

CMFCToolBar::ProcessCommand

Posta uma mensagem WM_COMMAND na janela que possui a barra de ferramentas.

BOOL ProcessCommand(CMFCToolBarButton* pButton);

Parâmetros

pButton
[in] Ponteiro para um botão na barra de ferramentas.

Valor de retorno

Esse método deve sempre retornar TRUE. O MFC usa valores FALSE internamente.

Comentários

Esse método posta uma mensagem WM_COMMAND na janela que possui a barra de ferramentas chamando CWnd::PostMessage e transmitindo a ID de comando do botão especificado como o parâmetro wParam.

Use a macro ON_COMMAND a fim de mapear a mensagem WM_COMMAND para uma função de membro.

CMFCToolBar::RemoveAllButtons

Remove todos os botões e separadores da barra de ferramentas.

virtual void RemoveAllButtons();

Comentários

A estrutura chama esse método quando recria ou destrói uma barra de ferramentas.

CMFCToolBar::RemoveButton

Remove da barra de ferramentas o botão que tem o índice especificado.

virtual BOOL RemoveButton(int iIndex);

Parâmetros

iIndex
[in] Especifica o índice baseado em zero do botão a ser removido.

Valor de retorno

TRUE se o método for bem-sucedido ou FALSE se o índice especificado for inválido ou se o índice se referir ao botão Personalizar.

Comentários

Esse método atualiza atributos adicionais da barra de ferramentas afetados pela remoção do botão. Por exemplo, esse método remove separadores não essenciais da barra de ferramentas e recria a tabela de teclas de atalho.

Para saber mais sobre o botão Personalizar, confira CMFCToolBar::EnableCustomizeButton.

CMFCToolBar::RemoveStateFromRegistry

Exclui as informações de estado da barra de ferramentas do registro do Windows.

virtual BOOL RemoveStateFromRegistry(
    LPCTSTR lpszProfileName=NULL,
    int nIndex=-1,
    UINT uiID=(UINT)-1);

Parâmetros

lpszProfileName
[in] Especifica a chave do Registro em que as informações de estado estão localizadas.

nIndex
[in] A ID de controle da barra de ferramentas.

uiID
[in] A ID do recurso da barra de ferramentas. Se esse parâmetro for -1, o método usará o método CWnd::GetDlgCtrlID para recuperar a ID do recurso.

Valor de retorno

Um valor diferente de zero, se o método tiver êxito. Caso contrário, 0.

Comentários

A estrutura chama esse método quando exclui uma barra de ferramentas definida pelo usuário.

Substitua esse método se você armazenar informações de estado adicionais no Registro do Windows.

CMFCToolBar::ReplaceButton

Substitui um botão da barra de ferramentas por outro botão da barra de ferramentas.

int ReplaceButton(
    UINT uiCmd,
    const CMFCToolBarButton& button,
    BOOL bAll=FALSE);

Parâmetros

uiCmd
[in] A ID de comando do botão a ser substituído.

button
[in] Uma referência ao CMFCToolBarButton a ser inserido.

bAll
[in] Um valor booliano que especifica se todos os botões que têm a ID de comando especificada por uiCmd devem ser substituídos ou não. Se esse parâmetro for TRUE, todos os botões que têm a ID de comando especificada serão substituídos. Caso contrário, o primeiro botão será substituído.

Valor de retorno

O número de botões que são substituídos. Esse método retornará 0 se um botão com a ID de comando especificada não existir na barra de ferramentas.

Comentários

Chame esse método quando quiser adicionar botões de barra de ferramentas que não podem ser carregados dos recursos. Você pode criar um botão de espaço reservado no tempo de design e substituir esse botão por um botão personalizado ao inicializar a barra de ferramentas. Confira o exemplo VisualStudioDemo para obter um exemplo que usa esse método.

Exemplo

O seguinte exemplo demonstra como usar o método ReplaceButton na classe CMFCToolBar. Este snippet de código faz parte do exemplo de demonstração do IE.

CMFCToolBar m_wndToolBar;
// CMenu menuHistory
// CString str
m_wndToolBar.ReplaceButton(ID_GO_BACK,
                           CMFCToolBarMenuButton(ID_GO_BACK, menuHistory,
                                                 GetCmdMgr()->GetCmdImage(ID_GO_BACK), str));

CMFCToolBar::ResetAll

Restaura todas as barras de ferramentas para seus estados originais.

static void __stdcall ResetAll();

Comentários

Esse método chama o método CMFCToolBar::RestoreOriginalState em cada barra de ferramentas no aplicativo que pode ser restaurado. Ele usa o método CMFCToolBar::CanBeRestored para determinar se uma barra de ferramentas pode ser restaurada.

CMFCToolBar::ResetAllImages

Limpa todas as coleções de imagens da barra de ferramentas no aplicativo.

static void __stdcall ResetAllImages();

Comentários

Esse método limpa as coleções de imagens que são inicializadas pelos métodos CMFCToolBar::LoadBitmap e CMFCToolBar::LoadToolBar.

CMFCToolBar::ResetImages

virtual void ResetImages();

Comentários

CMFCToolBar::RestoreFocus

virtual void RestoreFocus();

Comentários

CMFCToolBar::RestoreOriginalState

Restaura o estado original de uma barra de ferramentas.

virtual BOOL RestoreOriginalState();

Valor de retorno

TRUE se o método for bem-sucedido ou FALSE se o método falhar ou a barra de ferramentas for definida pelo usuário.

Comentários

Esse método carrega a barra de ferramentas do arquivo de recursos usando o método CMFCToolBar::LoadToolBar.

A estrutura chama esse método quando o usuário escolhe o botão Redefinir Tudo na página Barras de Ferramentas de uma caixa de diálogo personalizada.

CMFCToolBar::SaveParameters

static BOOL __stdcall SaveParameters(LPCTSTR lpszProfileName = NULL);

Parâmetros

[in] lpszProfileName\

Valor de retorno

Comentários

CMFCToolBar::SaveState

Salva as informações de estado da barra de ferramentas no registro do Windows.

virtual BOOL SaveState(
    LPCTSTR lpszProfileName=NULL,
    int nIndex=-1,
    UINT uiID=(UINT)-1);

Parâmetros

lpszProfileName
[in] Especifica o caminho relativo da chave do Registro do Windows.

nIndex
[in] A ID de controle da barra de ferramentas.

uiID
[in] A ID do recurso da barra de ferramentas.

Valor de retorno

Um valor diferente de zero, se o método tiver êxito. Caso contrário, 0.

Comentários

A estrutura chama esse método quando salva o estado do aplicativo no registro. Para obter mais informações, consulte CWinAppEx::SaveState.

CMFCToolBar::SetBasicCommands

Define a lista de comandos que sempre são exibidos quando um usuário abre um menu.

static void __stdcall SetBasicCommands(CList<UINT,UINT>& lstCommands);

Parâmetros

lstCommands
[in] Uma referência a um objeto CList que contém uma coleção de comandos.

Comentários

Um comando básico sempre é exibido quando o menu é aberto. Esse método é relevante quando o usuário opta por exibir comandos usados recentemente.

Use o método CMFCToolBar::AddBasicCommand para adicionar um comando à lista de comandos básicos. Use o método CMFCToolBar::GetBasicCommands para recuperar a lista de comandos básicos usados pelo aplicativo.

Confira o exemplo do Explorer para ver como usar esse método.

CMFCToolBar::SetButtonInfo

Define a ID de comando, o estilo e a ID da imagem de um botão da barra de ferramentas.

void SetButtonInfo(
    int nIndex,
    UINT nID,
    UINT nStyle,
    int iImage);

Parâmetros

nIndex
[in] O índice baseado em zero do botão cujas propriedades estão definidas.

nID
[in] A ID de comando do botão.

nStyle
[in] O estilo do botão. Confira Estilos de Controle de Barra de Ferramentas para a lista de estilos de botão de barra de ferramentas disponíveis.

iImage
[in] O índice de imagem baseado em zero do botão (ou seja, o índice na coleção de imagens da barra de ferramentas).

Comentários

Chame esse método para definir as propriedades de um botão de barra de ferramentas.

Em builds de depuração, esse método gera uma falha de declaração quando o índice especificado por nIndex é inválido.

Chame o método CMFCToolBar::SetButtonStyle para definir apenas o estilo do botão.

CMFCToolBar::SetButtons

Define os botões da barra de ferramentas.

virtual BOOL SetButtons(
    const UINT* lpIDArray,
    int nIDCount,
    BOOL bRemapImages=TRUE);

Parâmetros

lpIDArray
[in] Um ponteiro para a matriz de IDs de comando dos botões a serem inseridos.

nIDCount
[in] O número de itens em lpIDArray.

bRemapImages
[in] Um valor booliano que especifica se as imagens de botão existentes devem ser associadas aos botões inseridos. Se esse parâmetro for TRUE, as imagens serão remapeadas.

Valor de retorno

Um valor diferente de zero, se o método tiver êxito. Caso contrário, 0.

Comentários

Chame esse método para remover botões existentes de uma barra de ferramentas e inserir uma coleção de novos botões.

Esse método adiciona o botão Personalizar à barra de ferramentas e envia a mensagem AFX_WM_RESETTOOLBAR para a janela pai da barra de ferramentas. Para saber mais sobre o botão Personalizar, confira CMFCToolBar::EnableCustomizeButton.

CMFCToolBar::SetButtonStyle

Define o estilo do botão da barra de ferramentas no índice fornecido.

virtual void SetButtonStyle(
    int nIndex,
    UINT nStyle);

Parâmetros

nIndex
[entrada] O índice baseado em zero do botão da barra de ferramentas cujo estilo deve ser definido.

nStyle
[in] O estilo do botão. Confira Estilos de Controle de Barra de Ferramentas para a lista de estilos de botão de barra de ferramentas disponíveis.

Comentários

Esse método removerá o estilo TBBS_PRESSED se nStyle for TBBS_DISABLED porque o usuário não pode selecionar um botão desabilitado.

CMFCToolBar::SetButtonText

Define o rótulo de texto de um botão de barra de ferramentas.

BOOL SetButtonText(
    int nIndex,
    LPCTSTR lpszText);

Parâmetros

nIndex
[in] O índice do botão de barra de ferramentas.

lpszText
[in] O rótulo de texto do botão de barra de ferramentas. Deve ser diferente de nulo.

Valor de retorno

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

Comentários

Esse método retornará FALSE se o índice fornecido não se referir a um botão de barra de ferramentas válido.

CMFCToolBar::SetCommandUsageOptions

Especifica quando os comandos raramente usados não aparecem no menu do aplicativo.

static BOOL SetCommandUsageOptions(
    UINT nStartCount,
    UINT nMinUsagePercentage=5);

Parâmetros

nStartCount
[in] Especifica o número de vezes que os comandos precisam ser executados antes que a estrutura mostre apenas os comandos básicos e usados recentemente.

nMinUsagePercentage
[in] A porcentagem de vezes que um comando precisa ser executado para ser considerado um comando usado recentemente.

Valor de retorno

FALSE se nMinUsagePercentage for igual ou maior que 100; caso contrário, TRUE.

Comentários

Chame esse método para personalizar o algoritmo que a estrutura usa para determinar como os itens de menu básicos e usados recentemente aparecem. Para saber mais sobre comandos básicos, confira CMFCToolBar::AddBasicCommand.

Essa classe usa a classe CMFCCmdUsageCount para acompanhar a contagem de uso de comandos. Para saber mais sobre essa classe, confira Classe CMFCCmdUsageCount.

CMFCToolBar::SetCustomizeMode

Habilita ou desabilita o modo de personalização de todas as barras de ferramentas no aplicativo.

static BOOL __stdcall SetCustomizeMode(BOOL bSet=TRUE);

Parâmetros

bSet
[in] Um valor booliano que especifica se o modo de personalização deve ser habilitado ou desabilitado. Defina esse parâmetro como TRUE para habilitar o modo de personalização ou FALSE para desabilitá-lo.

Valor de retorno

TRUE se o chamamento desse método alterar o modo de personalização; caso contrário, FALSE.

Comentários

Esse método ajusta o layout e redesenha cada barra de ferramentas no aplicativo. Chame o método CMFCToolBar::IsCustomizeMode para determinar se o aplicativo está no modo de personalização.

CMFCToolBar::SetGrayDisabledButtons

Especifica se os botões indisponíveis na barra de ferramentas estão esmaecidos ou se imagens não disponíveis para o botão são usadas.

void SetGrayDisabledButtons(BOOL bGrayDisabledButtons);

Parâmetros

bGrayDisabledButtons
[in] Um valor booliano que especifica como exibir botões indisponíveis. Se esse parâmetro for TRUE, a estrutura esmaecerá os botões. Caso contrário, a estrutura usará a coleção de imagens não disponíveis para o botão.

Comentários

Por padrão, os botões indisponíveis ficam esmaecidos.

CMFCToolBar::SetHeight

Define a altura da barra de ferramentas.

void SetHeight(int cyHeight);

Parâmetros

cyHeight
[in] A altura da barra de ferramentas, em pixels.

Comentários

Esse método redesenha a barra de ferramentas depois de definir a altura.

CMFCToolBar::SetHelpMode

static void __stdcall SetHelpMode(BOOL bOn = TRUE);

Parâmetros

[in] bOn\

Comentários

CMFCToolBar::SetHot

BOOL SetHot(CMFCToolBarButton* pMenuButton);

Parâmetros

[in] pMenuButton\

Valor de retorno

Comentários

CMFCToolBar::SetHotBorder

Especifica se os botões da barra de ferramentas são controlados com frequência.

void SetHotBorder(BOOL bShowHotBorder);

Parâmetros

bShowHotBorder
[in] Um valor booliano que especifica se os botões da barra de ferramentas devem ser controlados. Se esse parâmetro for TRUE, a barra de ferramentas controlará seus botões. Caso contrário, a barra de ferramentas não controlará os botões.

Comentários

Se um botão for controlado, a estrutura realçará o botão quando o mouse se mover por ele. Por padrão, cada barra de ferramentas controla seus botões.

Chame o método CMFCToolBar::GetHotBorder para determinar se a barra de ferramentas controla seus botões.

CMFCToolBar::SetHotTextColor

Define a cor do texto para botões de barra de ferramentas de uso frequente.

static void SetHotTextColor(COLORREF clrText);

Parâmetros

clrText
[in] Especifica a cor do texto para botões da barra de ferramentas que são controlados.

Comentários

Para saber mais sobre botões de barra de ferramentas controlados, confira CMFCToolBar::GetHotBorder e CMFCToolBar::SetHotBorder.

CMFCToolBar::SetIgnoreSetText

void SetIgnoreSetText(BOOL bValue);

Parâmetros

[in] bValue\

Comentários

CMFCToolBar::SetLargeIcons

Especifica se os botões da barra de ferramentas exibem ícones grandes.

static void SetLargeIcons(BOOL bLargeIcons=TRUE);

Parâmetros

bLargeIcons
[in] Um valor booliano que especifica quais ícones usar. Se esse parâmetro for TRUE, a estrutura exibirá ícones grandes. Caso contrário, a estrutura exibirá ícones regulares.

Comentários

A estrutura chama esse método quando o usuário altera o estado da caixa de seleção Ícones Grandes na guia Opções da caixa de diálogo Personalizar. Esse método redimensiona todas as barras de ferramentas no aplicativo.

Por padrão, a estrutura exibe ícones regulares.

Para saber mais sobre a caixa de diálogo Personalizar, confira Classe CMFCToolBarsCustomizeDialog.

CMFCToolBar::SetLockedSizes

Define os tamanhos de botões bloqueados e imagens bloqueadas na barra de ferramentas.

void SetLockedSizes(
    SIZE sizeButton,
    SIZE sizeImage,
    BOOL bDontScale = FALSE);

Parâmetros

sizeButton
[in] Especifica o tamanho dos botões de barra de ferramentas bloqueados.

sizeImage
[in] Especifica o tamanho das imagens da barra de ferramentas bloqueadas.

bDontScale
Especifica se as imagens da barra de ferramentas bloqueadas devem ser dimensionadas ou não no modo DPI alto.

Comentários

O tamanho padrão dos botões bloqueados é de 23 x 22 pixels. O tamanho padrão das imagens bloqueadas é de 16 x 15 pixels.

Chame o método CMFCToolBar::GetLockedImageSize para recuperar o tamanho das imagens bloqueadas. Chame o método CMFCToolBar::GetButtonSize para recuperar o tamanho dos botões de barra de ferramentas bloqueados.

CMFCToolBar::SetMaskMode

void SetMaskMode(BOOL bMasked);

Parâmetros

[in] bMasked\

Comentários

CMFCToolBar::SetMenuSizes

Define o tamanho dos botões de menu da barra de ferramentas e suas imagens.

static void __stdcall SetMenuSizes(
    SIZE sizeButton,
    SIZE sizeImage);

Parâmetros

sizeButton
[in] Especifica o tamanho dos botões da barra de ferramentas, em pixels.

sizeImage
[in] Especifica o tamanho das imagens da barra de ferramentas, em pixels.

Comentários

Por padrão, os botões de menu e suas imagens têm um tamanho indefinido.

Chame o método CMFCToolBar::GetMenuButtonSize para determinar o tamanho dos botões de menu e o método CMFCToolBar::GetMenuImageSize para determinar o tamanho das imagens do botão de menu.

Confira os exemplos IEDemo e MSMoneyDemo para ver como usar esse método.

CMFCToolBar::SetNonPermittedCommands

Define a lista de comandos que não podem ser executados pelo usuário.

static void SetNonPermittedCommands(CList<UINT,UINT>& lstCommands);

Parâmetros

lstCommands
[in] Uma referência a um objeto CList que contém os comandos que não podem ser executados pelo usuário.

Comentários

Chame esse método para impedir que o usuário selecione determinados comandos. Por exemplo, talvez você queira impedir que o usuário selecione determinados comandos por motivos de segurança. Confira os exemplos MDITabsDemo e MenuSubSet para ver como usar esse método.

Esse método limpa a lista anterior de comandos não permitidos. Por padrão, a lista de comandos não permitidos está vazia.

CMFCToolBar::SetOneRowWithSibling

Posiciona a barra de ferramentas e sua irmã na mesma linha.

void SetOneRowWithSibling();

Comentários

A estrutura chama esse método quando o usuário seleciona o botão Mostrar Botões em Uma Linha.

Chame o método CMFCToolBar::SetSiblingToolBar para habilitar os botões Mostrar em Uma Linha ou Mostrar Botões nos botões Duas Linhas. Se você chamar CMFCToolBar::SetSiblingToolBar para essa barra de ferramentas, a barra de ferramentas irmã será movida para a linha dessa barra de ferramentas. Caso contrário, essa barra de ferramentas será movida para a linha da irmã.

A estrutura chama o método CMFCToolBar::SetTwoRowsWithSibling quando o usuário seleciona o botão Mostrar Botões em Duas Linhas.

CMFCToolBar::SetOrigButtons

void SetOrigButtons(const CObList& lstOrigButtons);

Parâmetros

[in] lstOrigButtons\

Comentários

CMFCToolBar::SetPermament

Especifica se um usuário pode fechar a barra de ferramentas.

void SetPermament(BOOL bPermament=TRUE);

Parâmetros

bPermament
[in] Um valor booliano que especifica se um usuário pode fechar a barra de ferramentas. Se esse parâmetro for TRUE, um usuário não poderá fechar a barra de ferramentas. Caso contrário, um usuário poderá fechar a barra de ferramentas.

Comentários

Por padrão, um usuário pode fechar cada barra de ferramentas.

Chame o método CMFCToolBar::CanBeClosed para determinar se um usuário pode fechar a barra de ferramentas.

CMFCToolBar::SetRouteCommandsViaFrame

Especifica se o quadro pai ou o proprietário envia comandos para a barra de ferramentas.

void SetRouteCommandsViaFrame(BOOL bValue);

Parâmetros

bValue
[in] Se esse parâmetro for TRUE, o quadro pai enviará comandos para a barra de ferramentas. Caso contrário, o proprietário enviará comandos para a barra de ferramentas.

Comentários

Por padrão, o quadro pai envia comandos para a barra de ferramentas. Chame o método CMFCToolBar::GetRouteCommandsViaFrame para determinar quem envia comandos para a barra de ferramentas, se o quadro pai ou o proprietário.

CMFCToolBar::SetShowTooltips

Especifica se a estrutura exibe dicas de ferramenta.

static void SetShowTooltips(BOOL bValue);

Parâmetros

bValue
[in] Se esse parâmetro for TRUE, a estrutura mostrará dicas de ferramenta. Caso contrário, a estrutura oculta as dicas de ferramenta.

Comentários

Por padrão, a estrutura mostra dicas de ferramenta.

Chame o método CMFCToolBar::GetShowTooltips para determinar se a estrutura mostra dicas de ferramenta.

CMFCToolBar::SetSiblingToolBar

Especifica a irmã da barra de ferramentas.

void SetSiblingToolBar(CMFCToolBar* pBrotherToolbar);

Parâmetros

pBrotherToolbar
[in] Um ponteiro para a barra de ferramentas irmã.

Comentários

Esse método habilita os botões Mostrar Botões em Uma Linha ou Mostrar Botões em Duas Linhas que são mostrados quando o usuário exibe o menu pop-up Personalizar. Chame esse método quando quiser permitir que o usuário especifique se as barras de ferramentas relacionadas aparecem na mesma linha ou em linhas diferentes.

Chame esse método depois de habilitar o botão Personalizar que aparece na barra de ferramentas. Para habilitar o botão Personalizar, chame o método CMFCToolBar::EnableCustomizeButton.

Para recuperar a irmã de uma barra de ferramentas, chame CMFCToolBar::GetSiblingToolBar.

CMFCToolBar::SetSizes

Especifica os tamanhos de botões e imagens em todas as barras de ferramentas.

static void __stdcall SetSizes(
    SIZE sizeButton,
    SIZE sizeImage);

Parâmetros

sizeButton
[in] O tamanho dos botões de barra de ferramentas, em pixels.

sizeImage
[in] O tamanho das imagens do botão de barra de ferramentas, em pixels.

Comentários

O tamanho padrão dos botões de barra de ferramentas é de 23 x 22 pixels. O tamanho padrão das imagens do botão de barra de ferramentas é de 16 x 15 pixels.

Chame o método CMFCToolBar::GetImageSize para recuperar o tamanho das imagens do botão da barra de ferramentas. Chame o método CMFCToolBar::GetButtonSize para recuperar o tamanho dos botões de barra de ferramentas.

CMFCToolBar::SetToolBarBtnText

Especifica as propriedades de um botão na barra de ferramentas.

void SetToolBarBtnText(
    UINT nBtnIndex,
    LPCTSTR szText=NULL,
    BOOL bShowText=TRUE,
    BOOL bShowImage=TRUE);

Parâmetros

nBtnIndex
[in] O índice baseado em zero do botão de barra de ferramentas na lista de botões de barra de ferramentas.

szText
[in] Especifica o rótulo de texto do botão de barra de ferramentas.

bShowText
[in] Se esse parâmetro for TRUE, a estrutura mostrará o rótulo de texto. Caso contrário, a estrutura oculta o rótulo de texto.

bShowImage
[in] Se esse parâmetro for TRUE, a estrutura mostrará a imagem do botão de barra de ferramentas. Caso contrário, a estrutura oculta a imagem do botão de barra de ferramentas.

Comentários

Por padrão, a estrutura mostra as imagens dos botões de barra de ferramentas, mas não mostra o rótulo de texto dos botões de barra de ferramentas.

Em builds de depuração, esse método gera uma falha de instrução assert se nBtnIndex não se referir a um botão válido de barra de ferramentas ou se o botão de barra de ferramentas for um separador.

CMFCToolBar::SetTwoRowsWithSibling

Posiciona a barra de ferramentas e sua irmã em linhas separadas.

void SetTwoRowsWithSibling();

Comentários

A estrutura chama o método quando o usuário seleciona o botão Mostrar Botões em Duas Linhas.

Chame o método CMFCToolBar::SetSiblingToolBar para habilitar os botões Mostrar em Uma Linha ou Mostrar Botões nos botões Duas Linhas. Se você chamar CMFCToolBar::SetSiblingToolBar para essa barra de ferramentas, a barra de ferramentas irmã será movida para uma linha separada. Caso contrário, essa barra de ferramentas é movida para uma linha separada.

A estrutura chama o método CMFCToolBar::SetOneRowWithSibling quando o usuário seleciona o botão Mostrar Botões em Uma Linha.

CMFCToolBar::SetUserImages

Define a coleção de imagens definidas pelo usuário no aplicativo.

static BOOL SetUserImages(CMFCToolBarImages* pUserImages);

Parâmetros

pUserImages
[in] Um ponteiro para a coleção de imagens definidas pelo usuário.

Valor de retorno

Diferente de zero se o método tiver êxito; caso contrário, 0 se o objeto CMFCToolBarImages especificado não for válido ou tiver um tamanho de imagem diferente do tamanho da imagem padrão da barra de ferramentas.

Comentários

A estrutura usa imagens definidas pelo usuário para desenhar botões de barra de ferramentas personalizados pelo usuário. A lista de imagens especificada por pUserImages é compartilhada entre todas as barras de ferramentas no aplicativo.

Esse método gera uma falha de instrução assert em builds de depuração se o objeto CMFCToolBarImages especificado não for válido ou tiver um tamanho de imagem que difere do tamanho padrão da imagem da barra de ferramentas.

Os exemplos de OutlookDemo, ToolTipDemo e VisualStudioDemo usam esse método para definir a coleção global de imagens definidas pelo usuário. Eles carregam o arquivo chamado UserImages.bmp, que está localizado no diretório de trabalho do aplicativo.

Chame o método 'CMFCToolBar::GetUserImages para recuperar a coleção de imagens definidas pelo usuário no aplicativo.

CMFCToolBar::StretchPane

Alonga a barra de ferramentas vertical ou horizontalmente e reposiciona os botões, se necessário.

virtual CSize StretchPane(
    int nLength,
    BOOL bVert);

Parâmetros

nLength
[in] O valor, em pixels, usado para esticar o painel.

bVert
[in] Se TRUE, alonga o painel verticalmente. Se FALSE, alonga o painel horizontalmente.

Valor de retorno

Um objeto CSize que especifica o tamanho da área de cliente da barra de ferramentas.

Comentários

Esse método chama CMFCToolBar::WrapToolBar para reposicionar os botões na barra de ferramentas estendida.

O valor retornado é determinado com o chamamento de CMFCToolBar::CalcSize.

CMFCToolBar::TranslateChar

Executa um comando de botão se o código de chave especificado corresponder a um atalho de teclado válido.

virtual BOOL TranslateChar(UINT nChar);

Parâmetros

nChar
[in] Especifica um código de chave virtual. Para obter uma lista de códigos de tecla virtual padrão, consulte Winuser.h

Valor de retorno

FALSE se o código de chave especificado não puder ser impresso ou não corresponder a um atalho de teclado válido; TRUE se o código de chave especificado corresponder a uma opção de menu suspenso; caso contrário, o valor retornado de CMFCToolBar::ProcessCommand.

Comentários

A estrutura chama esse método quando uma tecla é pressionada junto com a tecla Alt.

CMFCToolBar::UpdateButton

Atualiza o estado do botão especificado.

void UpdateButton(int nIndex);

Parâmetros

nIndex
[in] Especifica o índice baseado em zero do botão a ser atualizado.

Comentários

CMFCToolBar::WrapToolBar

Reposiciona botões da barra de ferramentas dentro das dimensões fornecidas.

int WrapToolBar(
    int nWidth,
    int nHeight = 32767,
    CDC* pDC = NULL,
    int nColumnWidth = -1,
    int nRowHeight = -1);

Parâmetros

nWidth
[in] Largura máxima da barra de ferramentas.

nHeight
[in] Altura máxima da barra de ferramentas. Não usado se a barra de ferramentas estiver flutuando.

pDC
[in] Ponteiro para um contexto de dispositivo. Se NULL, o contexto do dispositivo para a barra de ferramentas é usado.

nColumnWidth
[in] Largura do botão. Se -1, a largura atual será usada.

[em] m nRowHeight Altura do botão. Se -1, a altura atual será usada.

Valor de retorno

O número de linhas de botões na barra de ferramentas.

Comentários

Esse método reposiciona botões dentro da barra de ferramentas, encapsulando botões em linhas adicionais, se necessário.

CMFCToolBar::m_bDontScaleImages

Especifica se as imagens da barra de ferramentas devem ou não ser dimensionadas no modo DPI alto. Defina como TRUE para impedir o dimensionamento de imagem quando um tamanho de imagem não corresponde a um tamanho de botão.

AFX_IMPORT_DATA static BOOL m_bDontScaleImages;

Confira também

Gráfico da hierarquia
Classes
Classe CMFCMenuBar
Classe CMFCPopupMenuBar
Classe CMFCDropDownToolBar
Instruções passo a passo: colocando controles em barras de ferramentas