Compartilhar via


Classe CToolBar

Controlar barras que têm uma linha de botões com bitmap e separadores opcionais.

Sintaxe

class CToolBar : public CControlBar

Membros

Construtores públicos

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

Métodos públicos

Nome Descrição
CToolBar::CommandToIndex Retorna o índice de um botão com a ID de comando fornecida.
CToolBar::Create Cria a barra de ferramentas do Windows e o anexa ao objeto CToolBar.
CToolBar::CreateEx Cria um objeto CToolBar com estilos adicionais para o objeto CToolBarCtrl inserido.
CToolBar::GetButtonInfo Recupera a ID, o estilo e o número de imagem de um botão.
CToolBar::GetButtonStyle Recupera o estilo de um botão.
CToolBar::GetButtonText Recupera o texto que será exibido em um botão.
CToolBar::GetItemID Retorna a ID de comando de um botão ou separador no índice fornecido.
CToolBar::GetItemRect Recupera o retângulo de exibição do item no índice fornecido.
CToolBar::GetToolBarCtrl Permite acesso direto ao controle comum subjacente.
CToolBar::LoadBitmap Carrega o bitmap que contém imagens de botão bitmap.
CToolBar::LoadToolBar Carrega um recurso de barra de ferramentas criado com o editor de recursos.
CToolBar::SetBitmap Define uma imagem de bitmap.
CToolBar::SetButtonInfo Define a ID, o estilo e o número de imagem de um botão.
CToolBar::SetButtons Define estilos de botão e um índice de imagens de botão no bitmap.
CToolBar::SetButtonStyle Define o estilo de um botão.
CToolBar::SetButtonText Define o texto que será exibido em um botão.
CToolBar::SetHeight Define a altura da barra de ferramentas.
CToolBar::SetSizes Define os tamanhos dos botões e os respectivos bitmaps.

Comentários

Os botões podem agir como botões de ação, botões de caixa de seleção ou botões de opção. Os objetos CToolBar geralmente são membros inseridos de objetos de janela com moldura derivados da classe CFrameWnd ou CMDIFrameWnd.

CToolBar::GetToolBarCtrl, uma função de membro nova no MFC 4.0, permite que você aproveite o suporte do controle comum do Windows para personalização de barra de ferramentas e funcionalidades adicionais. CToolBar as funções de membro oferecem a maior parte da funcionalidade dos controles comuns do Windows; no entanto, quando você chama GetToolBarCtrl, você pode dar às suas barras de ferramentas ainda mais as características das barras de ferramentas do Windows 95/98. Quando você chama GetToolBarCtrl, ele retorna uma referência a um objeto CToolBarCtrl. Confira CToolBarCtrl, para obter mais informações sobre como criar barras de ferramentas usando controles comuns do Windows. Para obter informações mais gerais sobre controles comuns, confira Controles Comuns no SDK do Windows.

O Visual C++ fornece dois métodos para criar uma barra de ferramentas. Para criar um recurso de barra de ferramentas usando o Editor de Recursos, siga estas etapas:

  1. Criar um recurso de barra de ferramentas.

  2. Construa o objeto CToolBar.

  3. Chame Create (ou CreateEx) para criar a barra de ferramentas do Windows e anexá-la ao objeto CToolBar.

  4. Chame LoadToolBar para carregar o recurso de barra de ferramentas.

Caso contrário, siga estas etapas:

  1. Construa o objeto CToolBar.

  2. Chame Create (ou CreateEx) para criar a barra de ferramentas do Windows e anexá-la ao objeto CToolBar.

  3. Chame LoadBitmap para carregar o bitmap que contém as imagens do botão de barra de ferramentas.

  4. Chame SetButtons para definir o estilo do botão e associar cada botão a uma imagem no bitmap.

Todas as imagens de botão na barra de ferramentas são tiradas de um bitmap, que deve conter uma imagem para cada botão. Todas as imagens devem ter o mesmo tamanho. O padrão é de 16 pixels de largura e 15 pixels de altura. As imagens devem estar lado a lado no bitmap.

A função SetButtons leva um ponteiro para uma matriz de IDs de controle e um inteiro que especifica o número de elementos na matriz. A função define a ID de cada botão como o valor do elemento correspondente da matriz e atribui a cada botão um índice de imagem que especifica a posição da imagem do botão no bitmap. Se um elemento de matriz tiver o valor ID_SEPARATOR, nenhum índice de imagem será atribuído.

A ordem das imagens no bitmap normalmente é a ordem em que elas são desenhadas na tela, mas você pode usar a função SetButtonInfo para alterar a relação entre a ordem das imagens e a ordem dos desenhos.

Todos os botões em uma barra de ferramentas têm o mesmo tamanho. O padrão é de 24 x 22 pixels, de acordo com as Diretrizes de Interface do Windows para Design de Software. Os espaços adicionais entre as dimensões de imagem e botão são usados para formar uma borda ao redor da imagem.

Cada botão tem uma imagem. Os vários estados e estilos de botão (pressionados, para cima, para baixo, desabilitados, desabilitados para baixo e indeterminados) são gerados a partir dessa imagem. Embora os bitmaps possam ser de qualquer cor, você pode obter os melhores resultados com imagens em preto e tons de cinza.

Aviso

CToolBar dá suporte a bitmaps com 16 cores, no máximo. Quando você carrega uma imagem em um editor de barras de ferramentas, o Visual Studio converte automaticamente a imagem em um bitmap de 16 cores, caso necessário, e exibe uma mensagem de aviso, se a imagem foi convertida. Se você usar uma imagem com mais de 16 cores (usando um editor externo para editar a imagem), o aplicativo pode apresentar um comportamento inesperado.

Os botões de barra de ferramentas imitam os botões de ação por padrão. No entanto, os botões de barra de ferramentas também podem imitar os botões de caixa de seleção ou botões de opção. Os botões de caixa de seleção têm três estados: marcados, limpos e indeterminados. Os botões de opção têm apenas dois estados: marcados e limpos.

Para definir um botão individual ou estilo separador, sem apontar para uma matriz, chame GetButtonStyle para recuperar o estilo e, em seguida, chame SetButtonStyle, em vez de SetButtons. SetButtonStyle é mais útil quando você deseja alterar o estilo de um botão em tempo de execução.

Para atribuir o texto a ser exibido em um botão, chame GetButtonText para recuperar o texto a ser exibido no botão e, em seguida, chame SetButtonText para definir o texto.

Para criar um botão de caixa de seleção, atribua-o ao estilo TBBS_CHECKBOX ou use a função de membro CCmdUI de um objeto SetCheck em um manipulador ON_UPDATE_COMMAND_UI. A chamada SetCheck transforma um botão de ação em um botão de caixa de seleção. Passe SetCheck um argumento de 0 para desmarcado, 1 para marcado ou 2 para indeterminado.

Para criar um botão de opção, chame a função de membro CCmdUI de um objeto SetRadio em um manipulador ON_UPDATE_COMMAND_UI. Passe SetRadio um argumento de 0 para desmarcado ou não zero para marcado. Para fornecer o comportamento mutuamente exclusivo de um grupo de rádios, você deve ter manipuladores ON_UPDATE_COMMAND_UI para todos os botões no grupo.

Para obter mais informações sobre como usar CToolBar, confira Implementação da Barra de Status do MFC e Nota Técnica 31: Barras de Controle.

Hierarquia de herança

CObject

CCmdTarget

CWnd

CControlBar

CToolBar

Requisitos

Cabeçalhoafxext.h:

CToolBar::CommandToIndex

Essa função de membro retorna o índice do primeiro botão de barra de ferramentas, começando na posição 0 cuja ID de comando corresponde a nIDFind.

int CommandToIndex(UINT nIDFind) const;

Parâmetros

nIDFind
ID de comando de um botão de barra de ferramentas.

Valor de Devolução

O índice do botão ou -1, se nenhum botão tiver a ID de comando fornecida.

CToolBar::Create

Essa função de membro cria uma barra de ferramentas do Windows (uma janela filho) e a associa ao objeto CToolBar.

virtual BOOL Create(
    CWnd* pParentWnd,
    DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_TOP,
    UINT nID = AFX_IDW_TOOLBAR);

Parâmetros

pParentWnd
Ponteiro para a janela que é o pai da barra de ferramentas.

dwStyle
O estilo de barra de ferramentas. Os outros estilos de barra de ferramentas com suporte são:

  • CBRS_TOP A barra de controle está na parte superior da janela com moldura.

  • CBRS_BOTTOM A barra de controle está na parte inferior da janela com moldura.

  • CBRS_NOALIGN A barra de controle não é reposicionada quando o pai é redimensionado.

  • CBRS_TOOLTIPS A barra de controle exibe dicas de ferramenta.

  • CBRS_SIZE_DYNAMIC A barra de controle é dinâmica.

  • CBRS_SIZE_FIXED A barra de controle é fixa.

  • CBRS_FLOATING A barra de controle é flutuante.

  • CBRS_FLYBY A barra de status exibe informações sobre o botão.

  • CBRS_HIDE_INPLACE A barra de controle não é exibida para o usuário.

nID
A ID da janela filho da barra de ferramentas.

Valor de Devolução

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

Comentários

Também define a altura da barra de ferramentas como valor padrão.

Exemplo

// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd.

//This example creates a dockable toolbar.
if (!m_wndToolBar.Create(this) ||
   !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
   TRACE0("Failed to create toolbar\n");
   return -1;      // fail to create
}

//Make the toolbar dockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);

CToolBar::CreateEx

Chame essa função para criar um barra de ferramentas do Windows (uma janela filho) e a associe ao objeto CToolBar.

virtual BOOL CreateEx(
    CWnd* pParentWnd,
    DWORD dwCtrlStyle = TBSTYLE_FLAT,
    DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP,
    CRect rcBorders = CRect(
    0,
    0,
    0,
    0),
    UINT nID = AFX_IDW_TOOLBAR);

Parâmetros

pParentWnd
Ponteiro para a janela que é o pai da barra de ferramentas.

dwCtrlStyle
Outros estilos para a criação do objeto CToolBarCtrl inserido. Por padrão, esse valor é definido como TBSTYLE_FLAT. Para obter uma lista completa de estilos de barra de ferramentas, confira dwStyle.

dwStyle
O estilo de barra de ferramentas. Confira Controle de Barra de Ferramentas e Estilos de Botão no SDK do Windows para obter uma lista de estilos apropriados.

rcBorders
Um objeto CRect que define as larguras das bordas da janela de barra de ferramentas. Essas bordas são definidas como 0,0,0,0 por padrão, resultando assim em uma janela de barra de ferramentas sem bordas.

nID
A ID da janela filho da barra de ferramentas.

Valor de Devolução

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

Comentários

Também define a altura da barra de ferramentas como valor padrão.

Use CreateEx, em vez de Create, quando for necessário que determinados estilos estejam presentes durante a criação do controle de barra de ferramentas inserido. Por exemplo, defina dwCtrlStyle como TBSTYLE_FLAT | TBSTYLE_TRANSPARENT para criar uma barra de ferramentas semelhante às barras de ferramentas do Internet Explorer 4.

Exemplo

// This example demonstrates CToolBar::CreateEx by creating a 
// toolbar as part of a child frame window. It also calls the 
// LoadToolbar and EnableDocking functions
int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
   if (CMDIChildWnd::OnCreate(lpCreateStruct) == -1)
      return -1;

   if (!m_wndMyToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
      | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
      !m_wndMyToolBar.LoadToolBar(IDR_MYTOOLBAR))
   {
      TRACE0("Failed to create toolbar\n");
      return -1;      // fail to create
   }

   m_wndMyToolBar.EnableDocking(CBRS_ALIGN_ANY);
   EnableDocking(CBRS_ALIGN_ANY);
   DockControlBar(&m_wndMyToolBar);

   return 0;
}

CToolBar::CToolBar

Essa função de membro cria um objeto CToolBar e define os tamanhos padrão.

CToolBar();

Comentários

Chame a função de membro Create para criar a janela de barra de ferramentas.

CToolBar::GetButtonInfo

Essa função de membro recupera a ID de controle, o estilo e o índice de imagem do botão de barra de ferramentas ou separador no local especificado por nIndex.

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

Parâmetros

nIndex
Índice do botão de barra de ferramentas ou separador cujas informações devem ser recuperadas.

nID
Referência a um UINT definido como a ID de comando do botão.

nStyle
Referência a um UINT definido como o estilo do botão.

iImage
Referência a um inteiro definido como o índice da imagem do botão no bitmap.

Comentários

Esses valores são atribuídos às variáveis referenciadas por nID, nStyle e iImage. O índice de imagem é a posição da imagem no bitmap que contém as imagens de todos os botões de barra de ferramentas. A primeira imagem está na posição 0.

Se nIndex especificar um separador, iImage será definido como a largura do separador em pixels.

CToolBar::GetButtonStyle

Chame essa função de membro para recuperar o estilo de um botão ou separador na barra de ferramentas.

UINT GetButtonStyle(int nIndex) const;

Parâmetros

nIndex
O índice do botão de barra de ferramentas ou estilo de separador a ser recuperado.

Valor de Devolução

O estilo do botão ou separador especificado por nIndex.

Comentários

O estilo de um botão determina como o botão será exibido e como ele responderá à entrada do usuário. Confira SetButtonStyle para obter exemplos de estilos de botão.

CToolBar::GetButtonText

Chame essa função de membro para recuperar o texto que é exibido em um botão.

CString GetButtonText(int nIndex) const;

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

Parâmetros

nIndex
Índice do texto a ser recuperado.

rString
Uma referência a um objeto CString que conterá o texto a ser recuperado.

Valor de Devolução

Um objeto CString que contém o texto do botão.

Comentários

A segunda forma dessa função de membro preenche um objeto CString com o texto da cadeia de caracteres.

CToolBar::GetItemID

Essa função de membro retorna a ID de comando do botão ou separador especificado por nIndex.

UINT GetItemID(int nIndex) const;

Parâmetros

nIndex
Índice do item cuja ID deve ser recuperada.

Valor de Devolução

A ID de comando do botão ou separador especificado por nIndex.

Comentários

Os separadores retornam ID_SEPARATOR.

CToolBar::GetItemRect

Essa função de membro preenche a estrutura RECT cujo endereço encontra-se em lpRect com as coordenadas do botão ou separador especificado por nIndex.

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

Parâmetros

nIndex
Índice do item (botão ou separador) cujas coordenadas do retângulo devem ser recuperadas.

lpRect
Endereço da estrutura RECT que conterá as coordenadas do item.

Comentários

As coordenadas estão em pixels em relação ao canto superior esquerdo da barra de ferramentas.

Use GetItemRect para obter as coordenadas de um separador que você deseja substituir por uma caixa de combinação ou outro controle.

Exemplo

Confira o exemplo de CToolBar::SetSizes.

CToolBar::GetToolBarCtrl

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

CToolBarCtrl& GetToolBarCtrl() const;

Valor de Devolução

Uma referência a um objeto CToolBarCtrl.

Comentários

Use GetToolBarCtrl para aproveitar a funcionalidade do controle comum de barra de ferramentas do Windows e o suporte fornecido por CToolBarCtrl para personalização da barra de ferramentas.

Para obter mais informações sobre como usar controles comuns, confira o artigo Controles e Controles Comuns no SDK do Windows.

Exemplo

// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd.

//This example shows how to add text to toolbar buttons.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE
   | CBRS_TOP) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
   TRACE0("Failed to create toolbar\n");
   return -1;      // fail to create
}

//Show text on toolbar buttons.
VERIFY(m_wndToolBar.SetButtonText(0, _T("New")));
VERIFY(m_wndToolBar.SetButtonText(1, _T("Open")));
VERIFY(m_wndToolBar.SetButtonText(2, _T("Save")));
VERIFY(m_wndToolBar.SetButtonText(4, _T("Cut")));
VERIFY(m_wndToolBar.SetButtonText(5, _T("Copy")));
VERIFY(m_wndToolBar.SetButtonText(6, _T("Paste")));
VERIFY(m_wndToolBar.SetButtonText(8, _T("Print")));
VERIFY(m_wndToolBar.SetButtonText(9, _T("About")));

CRect temp;
m_wndToolBar.GetItemRect(0, &temp);
m_wndToolBar.GetToolBarCtrl().SetButtonSize(CSize(temp.Width(),
   temp.Height()));

CToolBar::LoadBitmap

Chame essa função de membro para carregar o bitmap especificado por lpszResourceName ou nIDResource.

BOOL LoadBitmap(LPCTSTR lpszResourceName);
BOOL LoadBitmap(UINT nIDResource);

Parâmetros

lpszResourceName
Ponteiro para o nome do recurso do bitmap a ser carregado.

nIDResource
ID do recurso do bitmap a ser carregado.

Valor de Devolução

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

Comentários

O bitmap deve conter uma imagem para cada botão de barra de ferramentas. Se as imagens não forem do tamanho padrão (16 pixels de largura e 15 pixels de altura), chame SetSizes para definir os tamanhos de botão e as respectivas imagens.

Aviso

CToolBar dá suporte a bitmaps com 16 cores, no máximo. Quando você carrega uma imagem em um editor de barras de ferramentas, o Visual Studio converte automaticamente a imagem em um bitmap de 16 cores, caso necessário, e exibe uma mensagem de aviso, se a imagem foi convertida. Se você usar uma imagem com mais de 16 cores (usando um editor externo para editar a imagem), o aplicativo pode apresentar um comportamento inesperado.

CToolBar::LoadToolBar

Chame essa função de membro para carregar a barra de ferramentas especificada por lpszResourceName ou nIDResource.

BOOL LoadToolBar(LPCTSTR lpszResourceName);
BOOL LoadToolBar(UINT nIDResource);

Parâmetros

lpszResourceName
Ponteiro para o nome do recurso de barra de ferramentas a ser carregada.

nIDResource
ID do recurso de barra de ferramentas a ser carregada.

Valor de Devolução

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

Comentários

Confira o editor de barra de ferramentas para obter mais informações sobre como criar um recurso de barra de ferramentas.

Exemplo

Confira o exemplo de CToolBar::CreateEx.

CToolBar::SetBitmap

Chame essa função de membro para definir a imagem de bitmap da barra de ferramentas.

BOOL SetBitmap(HBITMAP hbmImageWell);

Parâmetros

hbmImageWell
Identificador de uma imagem de bitmap associada a uma barra de ferramentas.

Valor de Devolução

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

Comentários

Por exemplo, chame SetBitmap para alterar a imagem de bitmap depois que o usuário executar uma ação em um documento que altera a ação de um botão.

CToolBar::SetButtonInfo

Chame essa função de membro para definir a ID de comando, o estilo e o número da imagem do botão.

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

Parâmetros

nIndex
Índice baseado em zero do botão ou separador para o qual as informações devem ser definidas.

nID
O valor para o qual a ID de comando do botão está definida.

nStyle
O novo estilo de botão. Há suporte para os seguintes estilos de botão:

  • TBBS_BUTTON Botão de ação Standard (padrão)

  • TBBS_SEPARATOR Separador

  • TBBS_CHECKBOX Botão de caixa de seleção automático

  • TBBS_GROUP Marca o início de um grupo de botões

  • TBBS_CHECKGROUP Marca o início de um grupo de botões de caixa de seleção

  • TBBS_DROPDOWN Cria um botão de lista suspensa.

  • TBBS_AUTOSIZE A largura do botão será calculada com base no texto do botão, e não no tamanho da imagem.

  • TBBS_NOPREFIX O texto do botão não terá um prefixo de acelerador associado.

iImage
Novo índice da imagem do botão no bitmap.

Comentários

Para separadores com o estilo TBBS_SEPARATOR, essa função define a largura do separador em pixels como o valor armazenado em iImage.

Observação

Você também pode definir estados de botão usando o parâmetro nStyle. No entanto, como os estados de botão são controlados pelo manipulador ON_UPDATE_COMMAND_UI, os estados que você definir usando SetButtonInfo serão perdidos durante o próximo processamento ocioso. Confira Como Atualizar Objetos User-Interface e TN031: Barras de Controle, para obter mais informações.

Para obter informações sobre imagens e botões de bitmap, confira a CToolBar Visão geral e CToolBar::LoadBitmap.

CToolBar::SetButtons

Essa função de membro define a ID de comando de cada botão de barra de ferramentas como o valor especificado pelo elemento correspondente da matriz lpIDArray.

BOOL SetButtons(
    const UINT* lpIDArray,
    int nIDCount);

Parâmetros

lpIDArray
Ponteiro para uma matriz de IDs de comando. Pode ser NULL para alocar botões vazios.

nIDCount
Número de elementos na matriz apontados por lpIDArray.

Valor de Devolução

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

Comentários

Se um elemento da matriz tiver o valor ID_SEPARATOR, um separador será criado na posição correspondente da barra de ferramentas. Essa função também define o estilo de cada botão como TBBS_BUTTON e o estilo de cada separador como TBBS_SEPARATOR e atribui um índice de imagem a cada botão. O índice de imagem especifica a posição da imagem do botão no bitmap.

Você não precisa considerar separadores no bitmap, pois essa função não atribui índices de imagem para separadores. Se a barra de ferramentas tiver botões nas posições 0, 1 e 3 e um separador na posição 2, as imagens nas posições 0, 1 e 2 no bitmap serão atribuídas aos botões nas posições 0, 1 e 3, respectivamente.

Se lpIDArray for NULL, essa função alocará espaço para o número de itens especificados por nIDCount. Use SetButtonInfo para definir os atributos de cada item.

CToolBar::SetButtonStyle

Chame essa função de membro para definir o estilo de um botão ou separador ou para agrupar botões.

void SetButtonStyle(
    int nIndex,
    UINT nStyle);

Parâmetros

nIndex
Índice do botão ou separador cujas informações devem ser definidas.

nStyle
O estilo do botão. Há suporte para os seguintes estilos de botão:

  • TBBS_BUTTON Botão de ação Standard (padrão)

  • TBBS_SEPARATOR Separador

  • TBBS_CHECKBOX Botão de caixa de seleção automático

  • TBBS_GROUP Marca o início de um grupo de botões

  • TBBS_CHECKGROUP Marca o início de um grupo de botões de caixa de seleção

  • TBBS_DROPDOWN Cria um botão de lista suspensa

  • TBBS_AUTOSIZE A largura do botão será calculada com base no texto do botão, e não no tamanho da imagem

  • TBBS_NOPREFIX O texto do botão não terá um prefixo de acelerador associado

Comentários

O estilo de um botão determina como o botão será exibido e como ele responderá à entrada do usuário.

Antes de chamar SetButtonStyle, chame a função de membro GetButtonStyle para recuperar o botão ou estilo de separador.

Observação

Você também pode definir estados de botão usando o parâmetro nStyle. No entanto, como os estados de botão são controlados pelo manipulador ON_UPDATE_COMMAND_UI, os estados que você definir usando SetButtonStyle serão perdidos durante o próximo processamento ocioso. Confira Como Atualizar Objetos User-Interface e TN031: Barras de Controle, para obter mais informações.

CToolBar::SetButtonText

Chame essa função para definir o texto em um botão.

BOOL SetButtonText(
    int nIndex,
    LPCTSTR lpszText);

Parâmetros

nIndex
Índice do botão cujo texto deve ser definido.

lpszText
Aponta para o texto a ser definido em um botão.

Valor de Devolução

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

Exemplo

Confira o exemplo de CToolBar::GetToolBarCtrl.

CToolBar::SetHeight

Essa função de membro define a altura da barra de ferramentas como o valor, em pixels, especificado em cyHeight.

void SetHeight(int cyHeight);

Parâmetros

cyHeight
A altura da barra de ferramentas, em pixels.

Comentários

Depois de chamar SetSizes, use essa função de membro para substituir a altura da barra de ferramentas padrão. Se a altura for muito baixa, os botões serão cortados na parte inferior.

Se essa função não for chamada, a estrutura usará o tamanho do botão para determinar a altura da barra de ferramentas.

CToolBar::SetSizes

Chame essa função de membro para definir os botões de barra de ferramentas para o tamanho especificado por sizeButton, em pixels.

void SetSizes(
    SIZE sizeButton,
    SIZE sizeImage);

Parâmetros

sizeButton
O tamanho de cada botão, em pixels.

sizeImage
O tamanho de cada imagem, em pixels.

Comentários

O parâmetro sizeImage deve conter o tamanho, em pixels, das imagens no bitmap da barra de ferramentas. As dimensões em sizeButton devem ser suficientes para manter a imagem, mais 7 pixels adicionais de largura e 6 pixels adicionais de altura. Essa função também define a altura da barra de ferramentas para ajustar os botões.

Chame essa função de membro apenas para barras de ferramentas que não seguem as recomendações das Diretrizes da interface do Windows para Design de Software para tamanhos de botão e imagem.

Exemplo

// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd

// This example shows how to add text to toolbar buttons.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE 
   | CBRS_TOP) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
   TRACE0("Failed to create toolbar\n");
   return -1;      // fail to create
}

//Show text on toolbar buttons.
VERIFY(m_wndToolBar.SetButtonText(0, _T("New")));
VERIFY(m_wndToolBar.SetButtonText(1, _T("Open")));
VERIFY(m_wndToolBar.SetButtonText(2, _T("Save")));
VERIFY(m_wndToolBar.SetButtonText(4, _T("Cut")));
VERIFY(m_wndToolBar.SetButtonText(5, _T("Copy")));
VERIFY(m_wndToolBar.SetButtonText(6, _T("Paste")));
VERIFY(m_wndToolBar.SetButtonText(8, _T("Print")));
VERIFY(m_wndToolBar.SetButtonText(9, _T("About")));

CRect temp;
m_wndToolBar.GetItemRect(0,&temp);
m_wndToolBar.SetSizes(CSize(temp.Width(),
   temp.Height()),CSize(16,15));

Confira também

Exemplo de MFC CTRLBARS
Exemplo de MFC DLGCBR32
Exemplo de MFC DOCKTOOL
Classe CControlBar
Gráfico da hierarquia
Classe CToolBarCtrl