Clase CToolBarCtrl

Proporciona la funcionalidad del control de barra de herramientas común de Windows.

Sintaxis

class CToolBarCtrl : public CWnd

Miembros

Constructores públicos

Nombre Descripción
CToolBarCtrl::CToolBarCtrl Construye un objeto CToolBarCtrl.

Métodos públicos

Nombre Descripción
CToolBarCtrl::AddBitmap Agrega una o varias imágenes de mapa de bits de botón a la lista de imágenes de botones disponibles para un control de barra de herramientas.
CToolBarCtrl::AddButtons Agrega uno o varios botones a un control de barra de herramientas.
CToolBarCtrl::AddString Agrega una nueva cadena, que se pasa como identificador de recurso, a la lista interna de cadenas de la barra de herramientas.
CToolBarCtrl::AddStrings Agrega una nueva cadena o cadenas, pasadas como puntero a un búfer de cadenas separadas por NULL a la lista interna de cadenas de la barra de herramientas.
CToolBarCtrl::AutoSize Cambia el tamaño de un control de barra de herramientas.
CToolBarCtrl::ChangeBitmap Cambia el mapa de bits de un botón en el control de barra de herramientas actual.
CToolBarCtrl::CheckButton Marca o desmarca un botón determinado en un control de barra de herramientas.
CToolBarCtrl::CommandToIndex Recupera el índice de base cero para el botón asociado al identificador de comando especificado.
CToolBarCtrl::Create Crea un control de la barra de herramientas y lo adjunta a un objeto CToolBarCtrl.
CToolBarCtrl::CreateEx Crea un control de la barra de herramientas con los estilos extendidos de Windows especificados y lo adjunta a un objeto CToolBarCtrl.
CToolBarCtrl::Customize Muestra el cuadro de diálogo Personalizar barra de herramientas.
CToolBarCtrl::DeleteButton Elimina un botón del control de barra de herramientas.
CToolBarCtrl::EnableButton Habilita o deshabilita el botón especificado en un control de barra de herramientas.
CToolBarCtrl::GetAnchorHighlight Recupera la configuración de resaltado del delimitador de una barra de herramientas.
CToolBarCtrl::GetBitmap Recupera el índice del mapa de bits asociado a un botón de una barra de herramientas.
CToolBarCtrl::GetBitmapFlags Obtiene marcas asociadas al mapa de bits de la barra de herramientas.
CToolBarCtrl::GetButton Recupera información sobre el botón especificado en un control de barra de herramientas.
CToolBarCtrl::GetButtonCount Recupera un recuento de los botones que se encuentran actualmente en el control de la barra de herramientas.
CToolBarCtrl::GetButtonInfo Recupera la información de un botón de una barra de herramientas.
CToolBarCtrl::GetButtonSize Recupera el ancho y alto actuales de los botones de la barra de herramientas, en píxeles.
CToolBarCtrl::GetColorScheme Recupera la combinación de colores del control de la barra de herramientas actual.
CToolBarCtrl::GetDisabledImageList Recupera la lista de imágenes que usa un control de barra de herramientas para mostrar botones deshabilitados.
CToolBarCtrl::GetDropTarget Recupera la interfaz IDropTarget de un control de barra de herramientas.
CToolBarCtrl::GetExtendedStyle Recupera los estilos extendidos de un control de barra de herramientas.
CToolBarCtrl::GetHotImageList Recupera la lista de imágenes que usa un control de barra de herramientas para mostrar botones rápidos. Un botón rápido aparece resaltado al pasar por encima el puntero del mouse.
CToolBarCtrl::GetHotItem Recupera el índice del elemento rápido en una barra de herramientas.
CToolBarCtrl::GetImageList Recupera la lista de imágenes que usa un control de barra de herramientas para mostrar botones en su estado predeterminado.
CToolBarCtrl::GetInsertMark Recupera la marca de inserción actual de la barra de herramientas.
CToolBarCtrl::GetInsertMarkColor Recupera el color usado para dibujar la marca de inserción de la barra de herramientas.
CToolBarCtrl::GetItemRect Recupera el rectángulo delimitador de un botón en un control de barra de herramientas.
CToolBarCtrl::GetMaxSize Recupera el tamaño total de todos los botones y separadores visibles de la barra de herramientas.
CToolBarCtrl::GetMaxTextRows Recupera el número máximo de filas de texto mostradas en un botón de barra de herramientas.
CToolBarCtrl::GetMetrics Recupera las métricas de un control de barra de herramientas.
CToolBarCtrl::GetPadding Recupera el relleno horizontal y vertical del control de barra de herramientas actual.
CToolBarCtrl::GetPressedImageList Recupera la lista de imágenes que usa el control de barra de herramientas actual para representar botones en el estado presionado.
CToolBarCtrl::GetRect Recupera el rectángulo de delimitación para un botón de barra de herramientas especificado.
CToolBarCtrl::GetRows Recupera el número de filas de botones que se muestran actualmente en la barra de herramientas.
CToolBarCtrl::GetState Recupera información sobre el estado del botón especificado en un control de barra de herramientas, como si está habilitado, presionado o marcado.
CToolBarCtrl::GetString Recupera una cadena de barra de herramientas.
CToolBarCtrl::GetStyle Recupera los estilos actualmente en uso para un control de barra de herramientas.
CToolBarCtrl::GetToolTips Recupera el manipulador del control de información sobre herramientas, si existe, asociado al control de barra de herramientas.
CToolBarCtrl::HideButton Oculta o muestra el botón especificado en un control de barra de herramientas.
CToolBarCtrl::HitTest Determina dónde se encuentra un punto en un control de barra de herramientas.
CToolBarCtrl::Indeterminate Establece o borra el estado indeterminado (gris) del botón especificado en un control de barra de herramientas.
CToolBarCtrl::InsertButton Inserta un botón en un control de barra de herramientas.
CToolBarCtrl::InsertMarkHitTest Recupera la información de la marca de inserción de un punto de una barra de herramientas.
CToolBarCtrl::IsButtonChecked Indica si el botón especificado en un control de barra de herramientas está marcado.
CToolBarCtrl::IsButtonEnabled Indica si el botón especificado en un control de barra de herramientas está activado.
CToolBarCtrl::IsButtonHidden Indica si el botón especificado en un control de barra de herramientas está oculto.
CToolBarCtrl::IsButtonHighlighted Comprueba el estado de resaltado del botón de la barra de herramientas.
CToolBarCtrl::IsButtonIndeterminate Indica si el estado del botón especificado en un control de barra de herramientas es indeterminado (gris).
CToolBarCtrl::IsButtonPressed Indica si el botón especificado en un control de barra de herramientas está presionado.
CToolBarCtrl::LoadImages Carga mapas de bits en la lista de imágenes de un control de barra de herramientas.
CToolBarCtrl::MapAccelerator Asigna un carácter de atajo a un botón de barra de herramientas.
CToolBarCtrl::MarkButton Establece el estado de resaltado de un botón determinado en un control de barra de herramientas.
CToolBarCtrl::MoveButton Mueve un botón de un índice a otro.
CToolBarCtrl::PressButton Presiona o suelta el botón especificado en un control de barra de herramientas.
CToolBarCtrl::ReplaceBitmap Reemplaza el mapa de bits existente en el control de barra de herramientas actual por un nuevo mapa de bits.
CToolBarCtrl::RestoreState Restaura el estado del control de barra de herramientas.
CToolBarCtrl::SaveState Guarda el estado del control de barra de herramientas.
CToolBarCtrl::SetAnchorHighlight Establece la configuración de resaltado del delimitador de una barra de herramientas.
CToolBarCtrl::SetBitmapSize Establece el tamaño de las imágenes de mapa de bits para agregar a un control de barra de herramientas.
CToolBarCtrl::SetButtonInfo Establece la información de un botón existente en una barra de herramientas.
CToolBarCtrl::SetButtonSize Establece el tamaño de los botones para añadir a un control de barra de herramientas.
CToolBarCtrl::SetButtonStructSize Especifica el tamaño de la estructura TBBUTTON.
CToolBarCtrl::SetButtonWidth Establece el ancho mínimo y máximo del botón en el control de barra de herramientas.
CToolBarCtrl::SetCmdID Establece el identificador de comando que se va a enviar a la ventana propietaria cuando se presiona el botón especificado.
CToolBarCtrl::SetColorScheme Recupera la combinación de colores del control de la barra de herramientas actual.
CToolBarCtrl::SetDisabledImageList Establece la lista de imágenes que usará el control de barra de herramientas para mostrar botones deshabilitados.
CToolBarCtrl::SetDrawTextFlags Establece las marcas de la función DrawText de Win32, que se usa para dibujar el texto en el rectángulo especificado, con formato acorde a cómo se han establecido las marcas.
CToolBarCtrl::SetExtendedStyle Establece los estilos extendidos de un control de barra de herramientas.
CToolBarCtrl::SetHotImageList Establece la lista de imágenes que usará el control de barra de herramientas para mostrar botones rápidos.
CToolBarCtrl::SetHotItem Establece el elemento rápido en una barra de herramientas.
CToolBarCtrl::SetImageList Establece la lista de imágenes que usará la barra de herramientas para mostrar botones que estén en su estado predeterminado.
CToolBarCtrl::SetIndent Establece la sangría del primer botón de un control de barra de herramientas.
CToolBarCtrl::SetInsertMark Establece la marca de inserción actual de la barra de herramientas.
CToolBarCtrl::SetInsertMarkColor Establece el color usado para dibujar la marca de inserción de la barra de herramientas.
CToolBarCtrl::SetMaxTextRows Establece el número máximo de filas de texto mostradas en un botón de barra de herramientas.
CToolBarCtrl::SetMetrics Recupera las métricas de un control de barra de herramientas.
CToolBarCtrl::SetOwner Establece el margen de tiempo para recibir mensajes de notificación del control de barra de herramientas.
CToolBarCtrl::SetPadding Establece el relleno horizontal y vertical del control de barra de herramientas actual.
CToolBarCtrl::SetPressedImageList Establece la lista de imágenes que usa el control de barra de herramientas actual para representar botones en estado presionado.
CToolBarCtrl::SetRows Establece el número de filas de botones que se muestran en la barra de herramientas.
CToolBarCtrl::SetState Establece el estado del botón especificado en un control de barra de herramientas.
CToolBarCtrl::SetStyle Establece los estilos de un control de barra de herramientas.
CToolBarCtrl::SetToolTips Asocia un control de información sobre herramientas con el control de barra de herramientas.
CToolBarCtrl::SetWindowTheme Establece el estilo visual de un control de barra de herramientas.

Comentarios

Este control (y, por tanto, la clase CToolBarCtrl) solo está disponible para los programas que se ejecutan en Windows 95/98 y Windows NT 3.51 y posteriores.

Un control común de la barra de herramientas de Windows es una ventana secundaria rectangular que contiene uno o varios botones. Estos botones pueden mostrar una imagen de mapa de bits, una cadena o ambas. Cuando el usuario elige un botón, envía un mensaje de comando a la ventana propietaria de la barra de herramientas. Normalmente, los botones de una barra de herramientas corresponden a elementos del menú de la aplicación; proporcionan al usuario una manera más directa acceder a los comandos de una aplicación.

Los objetosCToolBarCtrl contienen varias estructuras de datos internas importantes: una lista de imágenes de mapa de bits de botones o una lista de imágenes, una lista de cadenas de etiquetas de botones, y una lista de estructuras TBBUTTON que asocian una imagen y/o cadena con la posición, estilo, estado e id.de comando del botón. Cada uno de los elementos de estas estructuras de datos es referido por un índice de base cero. Para poder usar un objeto CToolBarCtrl, debe configurar estas estructuras de datos. La lista de cadenas solo se puede usar para las etiquetas de botón; no se pueden recuperar cadenas de la barra de herramientas.

Para usar un objeto CToolBarCtrl, normalmente seguirá estos pasos:

  1. Construya el objeto CToolBarCtrl.

  2. Llamar a Create para crear el control común de la barra de herramientas de Windows y adjuntarlo al objeto CToolBarCtrl. Identificar el estilo de la barra de herramientas mediante estilos, como TBSTYLE_TRANSPARENT para una barra de herramientas transparente o TBSTYLE_DROPDOWN para una barra de herramientas que admita botones de estilo desplegable.

  3. Identificar cómo desea que se muestren los botones de la barra de herramientas:

    • Para usar imágenes de mapa de bits para botones, agregue los mapas de bits de botones a la barra de herramientas llamando a AddBitmap.

    • Para usar imágenes mostradas desde una lista de imágenes o botones, especifique la lista de imágenes llamando a SetImageList, SetHotImageList, o SetDisabledImageList.

    • Para usar etiquetas de cadena para los botones, agregue las cadenas a la barra de herramientas llamando a AddString y/o AddStrings.

  4. Agregue estructuras de botón a la barra de herramientas llamando a AddButtons.

  5. Si quiere sugerencias de herramientas para un botón de barra de herramientas en una ventana propietaria que no es CFrameWnd, debe controlar los mensajes TTN_NEEDTEXT en la ventana propietaria de la barra de herramientas, como se describe en Control de Notificaciones de sugerencias sobre herramientas. Si la ventana primaria de la barra de herramientas se deriva de CFrameWnd, las sugerencias de herramientas se muestran sin que tenga que hacer nada más porque CFrameWnd proporciona un controlador predeterminado.

  6. Si desea que el usuario pueda personalizar la barra de herramientas, controle los mensajes de notificación de personalización en la ventana propietaria, como se describe en Control de notificaciones de personalización.

Puede usar SaveState para guardar el estado actual de un control de barra de herramientas en el registro y RestoreState para restaurar el estado en función de la información almacenada anteriormente en el registro. Además de guardar el estado de la barra de herramientas entre usos de la aplicación, las aplicaciones suelen almacenar el estado antes de que el usuario empiece a personalizar la barra de herramientas en caso de que el usuario quiera restaurar la barra de herramientas a su estado original.

Compatibilidad con Internet Explorer versión 4.0 y posteriores

Para admitir la funcionalidad introducida en Internet Explorer, versión 4.0 y posteriores, MFC proporciona compatibilidad con listas de imágenes y estilos transparentes y planos para los controles de barra de herramientas.

Una barra de herramientas transparente permite que el cliente debajo de la barra de herramientas se vea a través. Para crear una barra de herramientas transparente, use los dos estilos: TBSTYLE_FLAT y TBSTYLE_TRANSPARENT. Las barras de herramientas transparentes cuentan con seguimiento activo; es decir, cuando el puntero del mouse se mueve sobre un botón rápido de la barra de herramientas, la apariencia del botón cambia. Las barras de herramientas creadas solo con el estilo TBSTYLE_FLAT tendrán botones que no son transparentes.

La compatibilidad con la lista de imágenes permite un control de mayor flexibilidad para el comportamiento predeterminado, las imágenes activas y las imágenes deshabilitadas. Use GetImageList, GetHotImageListy GetDisabledImageList con la barra de herramientas transparente para manipular la imagen según su estado:

Para obtener más información sobre el uso de la clase CToolBarCtrl, consulte Controles y Uso de CToolBarCtrl.

Jerarquía de herencia

CObject

CCmdTarget

CWnd

CToolBarCtrl

Requisitos

Encabezadoafxcmn.h:

CToolBarCtrl::AddBitmap

Agrega una o varias imágenes de botón a la lista de imágenes de botones almacenada en el control de barra de herramientas.

int AddBitmap(
    int nNumButtons,
    UINT nBitmapID);

int AddBitmap(
    int nNumButtons,
    CBitmap* pBitmap);

Parámetros

nNumButtons
Número de imágenes de botones en el mapa de bits.

nBitmapID
Identificador de recurso del mapa de bits que contiene la imagen o imágenes de botones a agregar.

pBitmap
Puntero del objeto CBitmap que contiene la imagen o imágenes de botones a agregar.

Valor devuelto

Índice de base cero de la primera imagen nueva si se realiza correctamente; de lo contrario, -1.

Comentarios

Puede usar la API de Windows CreateMappedBitmap para asignar colores antes de agregar el mapa de bits a la barra de herramientas. Si pasa un puntero a un objeto CBitMap, debe asegurarse de que el mapa de bits no se destruye hasta que se destruye la barra de herramientas.

CToolBarCtrl::AddButtons

Agrega uno o varios botones a un control de barra de herramientas.

BOOL AddButtons(
    int nNumButtons,
    LPTBBUTTON lpButtons);

Parámetros

nNumButtons
Número de botones a agregar.

lpButtons
Dirección de una matriz de estructuras TBBUTTON que contiene información sobre los botones a agregar. Debe haber el mismo número de elementos en la matriz que los botones especificados por nNumButtons.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

El puntero lpButtons apunta a una matriz de estructuras TBBUTTON. Cada estructura TBBUTTON asocia el botón que se va a agregar con su estilo, imagen y/o cadena, id. de comando, estado y los datos definidos por el usuario:

typedef struct _TBBUTTON {
    int iBitmap;    // zero-based index of button image
    int idCommand;  // command to be sent when button pressed
    BYTE fsState;   // button state--see below
    BYTE fsStyle;   // button style--see below
    DWORD dwData;   // application-defined value
    int iString;    // zero-based index of button label string
} TBBUTTON;

Los miembros son los siguientes:

  • iBitmap

    Índice de base cero de la imagen de botón, -1 si no hay ninguna imagen para este botón.

  • idCommand

    Identificador de comando asociado al botón. Este identificador se envía en un mensaje WM_COMMAND cuando se elige el botón. Si el miembro fsStyle tiene el valor TBSTYLE_SEP, este miembro debe ser cero.

  • fsState

    Marcas de estado del botón. Puede ser una combinación de los valores listados debajo:

    • TBSTATE_CHECKED El botón tiene el estilo TBSTYLE_CHECKED y está siendo presionado.

    • TBSTATE_ENABLED El botón acepta entrada del usuario. Un botón que no tiene este estado no acepta la entrada del usuario y está atenuado.

    • TBSTATE_HIDDEN El botón no está visible y no puede recibir la entrada del usuario.

    • TBSTATE_INDETERMINATE El botón está atenuado.

    • TBSTATE_PRESSED El botón está siendo presionado.

    • TBSTATE_WRAP Un salto de línea sigue al botón. El botón también debe tener el estado TBSTATE_ENABLED.

  • fsStyle

    Estilo de botón. Puede ser una combinación de los valores listados debajo:

    • TBSTYLE_BUTTON Crea un botón estándar para presionar.

    • TBSTYLE_CHECK Crea un botón que cambia entre los estados presionado y no presionado cada vez que el usuario hace clic sobre él. El botón tiene un color de fondo diferente cuando está en estado presionado.

    • TBSTYLE_CHECKGROUP Crea un botón de marcado que permanece presionado hasta que se presiona otro botón del grupo.

    • TBSTYLE_GROUP Crea un botón que permanece presionado hasta que se presiona otro botón del grupo.

    • TBSTYLE_SEP Crea un separador, creando un pequeño espacio entre los grupos de botones. Un botón que tiene este estilo no recibe la entrada del usuario.

  • dwData

    Datos definidos por el usuario.

  • iString

    Índice de base cero de la cadena a usar como etiqueta del botón, -1 si no hay ninguna cadena para este botón.

La imagen y/o cadena cuyo índice proporcione debe haberse agregado previamente a la lista del control de barra de herramientas mediante AddBitmap, AddStringy/o AddStrings.

CToolBarCtrl::AddString

Agrega una nueva cadena, que se pasa como identificador de recurso, a la lista interna de cadenas de la barra de herramientas.

int AddString(UINT nStringID);

Parámetros

nStringID
Identificador de recurso de cadena que se va a agregar a la lista de cadenas del control de barra de herramientas.

Valor devuelto

Índice de base cero de la primera cadena nueva agregada si se realiza correctamente; en caso contrario, -1.

CToolBarCtrl::AddStrings

Agrega una nueva cadena o cadenas a la lista de cadenas disponibles para un control de barra de herramientas.

int AddStrings(LPCTSTR lpszStrings);

Parámetros

lpszStrings
Dirección de un búfer que contiene una o varias cadenas terminadas en NULL para agregar a la lista de cadenas de la barra de herramientas. La última cadena debe terminarse con dos caracteres NULL.

Valor devuelto

Índice de base cero de la primera cadena nueva agregada si se realiza correctamente; en caso contrario, -1.

Comentarios

Las cadenas del búfer deben estar separadas por un carácter NULL. Debe asegurarse de que la última cadena tiene dos terminadores NULL. Para dar formato correcto a una cadena constante, puede escribirla como:

// one null added automatically
lpszStrings = _T("Only one string to add\0");

o:

// adds three strings with one call
lpszStrings = _T("String 1\0String 2\0String 3\0");

No debe pasar un objeto CString a esta función, ya que no es posible tener más de un carácter NULL en un CString.

CToolBarCtrl::AutoSize

Cambia el tamaño del control de barra de herramientas completo.

void AutoSize();

Comentarios

Debe llamar a esta función cuando cambie el tamaño de la ventana primaria o el de la barra de herramientas (por ejemplo, al establecer tamaño del botón o del mapa de bits, o al agregar cadenas).

CToolBarCtrl::ChangeBitmap

Cambia el mapa de bits de un botón en el control de barra de herramientas actual.

BOOL ChangeBitmap(
    int idButton,
    int iBitmap);

Parámetros

idButton
[in] Identificador de comando del botón que va a recibir un nuevo mapa de bits.

iBitmap
[in] Índice de base cero de una imagen en la lista de imágenes del control de barra de herramientas actual.

Valor devuelto

TRUE si este método es correcto; en caso contrario, FALSE.

Comentarios

Si este método se ejecuta correctamente, el sistema muestra la imagen especificada en el botón especificado.

Al usar este método, se envía el mensaje TB_CHANGEBITMAP, que se describe en Windows SDK.

Ejemplo

En el ejemplo de código siguiente se cambia el mapa de bits del botón Guardar archivo al mapa de bits del botón Acerca de.

{
   // Change the bitmap for the File Save button, whose
   // command ID is ID_FILE_SAVE, to the bitmap for the
   // About button, whose index is 7.
   CToolBarCtrl &m_toolBarCtrl = m_wndToolBar.GetToolBarCtrl();
   BOOL bRet = m_toolBarCtrl.ChangeBitmap(ID_FILE_SAVE, 7);
}

CToolBarCtrl::CheckButton

Marca o desmarca un botón determinado en un control de barra de herramientas.

BOOL CheckButton(
    int nID,
    BOOL bCheck = TRUE);

Parámetros

nID
Identificador de comando del botón que se va a marcar o desmarcar.

bCheck
TRUE para marcar el botón, FALSE para desmarcarlo.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

Cuando se ha marcado un botón, parece que se ha presionado. Si desea cambiar más de un estado de botón, considere la posibilidad de llamar a SetState en su lugar.

CToolBarCtrl::CommandToIndex

Recupera el índice de base cero para el botón asociado al identificador de comando especificado.

UINT CommandToIndex(UINT nID) const;

Parámetros

nID
Identificador de comando cuyo índice de botón desea buscar.

Valor devuelto

Índice de base cero del botón asociado al identificador de comando.

Comentarios

CToolBarCtrl::Create

Crea un control de la barra de herramientas y lo adjunta a un objeto CToolBarCtrl.

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

Parámetros

dwStyle
Especifica el estilo del control de la barra de herramientas. Las barras de herramientas siempre deben tener el estilo WS_CHILD. Además, puede especificar cualquier combinación de estilos de barra de herramientas y estilos de ventana como se describe en Comentarios.

rect
Opcionalmente, especifica el tamaño y la posición del control de la barra de herramientas. Puede ser un objeto CRect o una estructura RECT.

pParentWnd
Especifica la ventana principal del control de barra de herramientas. Este valor no debe ser NULL.

nID
Especifica el identificador del control de la barra de herramientas.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

El proceso de construcción de un elemento CToolBarCtrl se divide en dos pasos. En primer lugar, llame al constructor y, luego, a Create, lo que crea el control de barra de herramientas y lo asocia al objeto CToolBarCtrl. Aplique los siguientes estilos de ventana a un control de barra de herramientas.

  • WS_CHILD Siempre

  • WS_VISIBLE Normalmente

  • WS_DISABLED Raramente

Consulte CreateWindow en Windows SDK para ver una descripción de los estilos de ventanas.

Opcionalmente, aplique una combinación de estilos de control comunes, como se describe en Windows SDK.

Aplique una combinación de estilos de barra de herramientas al control o a los propios botones. Los estilos se describen en el tema Estilos de botones y controles de la barra de herramientas en Windows SDK.

Para usar estilos de barra de herramientas extendidos, llame a SetExtendedStyle después de llamar a Create. Para crear una barra de herramientas con estilos de ventana extendidos, llame a CToolBarCtrl::CreateEx en lugar de Create.

El control de barra de herramientas establece automáticamente el tamaño y la posición de la ventana de la barra de herramientas. La altura se basa en la de los botones de la barra de herramientas. La anchura es la misma que la del área cliente de la ventana primaria. Los estilos CCS_TOP y CCS_BOTTOM determinan si la barra de herramientas se coloca en la parte superior o inferior del área de cliente. De forma predeterminada, una barra tiene el estilo CCS_TOP.

CToolBarCtrl::CreateEx

Esta función puede usarse para crear un control (una ventana secundaria) y asociarlo con el objeto CToolBarCtrl.

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

Parámetros

dwExStyle
El valor de este parámetro se usa para especificar el estilo extendido del control que se va a crear. Para obtener una lista de estilos extendidos de Windows, consulte el parámetro dwExStyle de la función CreateWindowEx en Windows SDK.

dwStyle
Especifica el estilo del control de la barra de herramientas. Las barras de herramientas siempre deben tener el estilo WS_CHILD. Además, puede especificar cualquier combinación de estilos de barra de herramientas y estilos de ventana como se describe en la sección Comentarios de Create.

rect
Una referencia a una estructura RECT describiendo el tamaño y la posición de la ventana a crear, en las coordenadas cliente de pParentWnd.

pParentWnd
Un puntero a la ventana que constituye el elemento primario del control.

nID
El identificador de ventana secundaria del control.

Valor devuelto

Si es correcta, su valor es distinto de cero. En caso contrario, es cero.

Comentarios

Usa la función CreateEx, en lugar de Create, para aplicar estilos extendidos de Windows. Estos se especifican en el prefacio de estilo extendido WS_EX_ de Windows. CreateEx crea el control con los estilos de extendidos de Windows especificados por dwExStyle. Establece estilos extendidos específicos de un control mediante SetExtendedStyle. Por ejemplo, use CreateEx para establecer estilos como WS_EX_CONTEXTHELP, pero use SetExtendedStyle para establecer estilos como TBSTYLE_EX_DRAWDDARROWS. Para obtener más información, vea los estilos descritos en Estilos extendidos de la barra de herramientas en Windows SDK.

CToolBarCtrl::CToolBarCtrl

Construye un objeto CToolBarCtrl.

CToolBarCtrl();

Comentarios

Debe llamar a Create para que la barra de herramientas se pueda usar.

CToolBarCtrl::Customize

Muestra el cuadro de diálogo Personalizar barra de herramientas.

void Customize();

Comentarios

Este cuadro de diálogo permite al usuario personalizar la barra de herramientas agregando y eliminando botones. Para admitir la personalización, la ventana principal de la barra de herramientas debe manipular los mensajes de notificación de personalización, tal y como se describe en Manipular notificaciones de personalización. La barra de herramientas también debe haberse creado con el estilo CCS_ADJUSTABLE, como se describe en CToolBarCtrl::Create.

CToolBarCtrl::DeleteButton

Elimina un botón del control de barra de herramientas.

BOOL DeleteButton(int nIndex);

Parámetros

nIndex
Índice de base cero del botón que se va a eliminar.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

CToolBarCtrl::EnableButton

Habilita o deshabilita el botón especificado en un control de barra de herramientas.

BOOL EnableButton(
    int nID,
    BOOL bEnable = TRUE);

Parámetros

nID
Identificador de comando del botón para habilitar o deshabilitar.

bEnable
TRUE para habilitar el botón; FALSE para deshabilitarlo.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

Cuando se ha habilitado un botón, se puede presionar y marcar. Si desea cambiar más de un estado de botón, considere la posibilidad de llamar a SetState en su lugar.

CToolBarCtrl::GetAnchorHighlight

Recupera la configuración de resaltado del delimitador de una barra de herramientas.

BOOL GetAnchorHighlight() const;

Valor devuelto

Si no es cero, el resaltado de delimitador está habilitado. Si es cero, el resaltado de delimitador está deshabilitado.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETANCHORHIGHLIGHT de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetBitmap

Recupera el índice del mapa de bits asociado a un botón de una barra de herramientas.

int GetBitmap(int nID) const;

Parámetros

nID
Identificador de comando del botón cuyo índice de mapa de bits se va a recuperar.

Valor devuelto

Devuelve el índice del mapa de bits si se ejecuta correctamente, o cero en caso contrario.

Comentarios

Implementa la funcionalidad de TB_GETBITMAP en Windows SDK.

CToolBarCtrl::GetBitmapFlags

Recupera las marcas de mapa de bits de la barra de herramientas.

UINT GetBitmapFlags() const;

Valor devuelto

Un UINT que tiene la marca TBBF_LARGE solo si la pantalla puede admitir mapas de bits de barra de herramientas grandes.

Comentarios

Debería llamarlo tras crear la barra de herramientas pero antes de añadirle mapas de bits. El valor devuelto indica si la pantalla admite mapas de bits grandes o no. Si la pantalla admite mapas de bits grandes y si decide usarlos, llame a SetBitmapSize y SetButtonSize antes de agregar el mapa de bits grande mediante AddBitmap.

CToolBarCtrl::GetButton

Recupera información sobre el botón especificado en un control de barra de herramientas.

BOOL GetButton(
    int nIndex,
    LPTBBUTTON lpButton) const;

Parámetros

nIndex
Índice de base cero del botón para el que se va a recuperar información.

lpButton
Dirección de la estructura TBBUTTON que va a recibir una copia de la información del botón. Consulte CToolBarCtrl::AddButtons para obtener más información sobre la estructura TBBUTTON.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

CToolBarCtrl::GetButtonCount

Recupera un recuento de los botones que se encuentran actualmente en el control de la barra de herramientas.

int GetButtonCount() const;

Valor devuelto

Recuento de los botones.

CToolBarCtrl::GetButtonInfo

Recupera la información de un botón de una barra de herramientas.

int GetButtonInfo(
    int nID,
    TBBUTTONINFO* ptbbi) const;

Parámetros

nID
Identificador del botón.

ptbbi
Un puntero a una estructura TBBUTTONINFO que recibe la información del botón.

Valor devuelto

Índice de base cero del botón, si se ejecuta correctamente; en caso contrario, -1.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETBUTTONINFO de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetButtonSize

Obtiene el tamaño de un botón de la barra de herramientas.

DWORD GetButtonSize() const;

Valor devuelto

Un valor DWORD que contiene los valores de ancho y alto en el LOWORD y el HIWORD, respectivamente.

CToolBarCtrl::GetButtonText

Recupera el texto para mostrar de un botón especificado en el control de barra de herramientas actual.

CString GetButtonText(int idButton) const;

Parámetros

idButton
[in] El identificador del botón cuyo texto para mostrar se ha recuperado.

Valor devuelto

Un CString que contiene el texto para mostrar del botón especificado.

Comentarios

Al usar este método, se envía el mensaje TB_GETBUTTONTEXT, que se describe en Windows SDK.

CToolBarCtrl::GetColorScheme

Recupera la combinación de colores del control de la barra de herramientas actual.

BOOL GetColorScheme(COLORSCHEME* lpColorScheme) const;

Parámetros

lpColorScheme
[out] Un puntero a una estructura COLORSCHEME que recibe la información de la combinación de colores. Cuando este método vuelve, la estructura describe el color de resaltado y de sombra del control de la barra de herramientas.

Valor devuelto

TRUE si este método es correcto; en caso contrario, FALSE.

Comentarios

Al usar este método, se envía el mensaje TB_GETCOLORSCHEME, que se describe en Windows SDK.

CToolBarCtrl::GetDisabledImageList

Recupera la lista de imágenes que usa un control de barra de herramientas para mostrar botones deshabilitados.

CImageList* GetDisabledImageList() const;

Valor devuelto

Un puntero a un objeto CImageList o NULL si no se establece una lista de imágenes para el estado desactivado.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETDISABLEDIMAGELIST de Win32, tal y como se describe en Windows SDK. La implementación de MFC de GetDisabledImageList usa un objeto CImageList que contiene las imágenes de botones del control de la barra de herramientas, en lugar de un manipulador para una lista de imágenes.

CToolBarCtrl::GetDropTarget

Recupera la interfaz IDropTarget de un control de barra de herramientas.

HRESULT GetDropTarget(IDropTarget** ppDropTarget) const;

Parámetros

ppDropTarget
Puntero a un puntero de interfaz IDropTarget. Si se produce un error, un puntero NULL se coloca en esta dirección.

Valor devuelto

Devuelve un valor HRESULT indicando si la operación se ha realizado correctamente o no.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETOBJECT de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetExtendedStyle

Recupera los estilos extendidos de un control de barra de herramientas.

DWORD GetExtendedStyle() const;

Valor devuelto

Un DWORD que representa los estilos extendidos actualmente en uso para el control de barra de herramientas. Para obtener una lista de estilos, consulte Estilos extendidos de la barra de herramientas, en Windows SDK.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETEXTENDEDSTYLE de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetHotImageList

Recupera la lista de imágenes que usa un control de barra de herramientas para mostrar botones rápidos. Un botón rápido aparece resaltado al pasar por encima el puntero del mouse.

CImageList* GetHotImageList() const;

Valor devuelto

Un puntero a un objeto CImageList o NULL si no se establece una lista de imágenes para el estado desactivado.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETHOTIMAGELIST de Win32, tal y como se describe en Windows SDK. Un botón rápido aparece resaltado al pasar por encima el puntero del mouse.

CToolBarCtrl::GetHotItem

Recupera el índice del elemento rápido en una barra de herramientas.

int GetHotItem() const;

Valor devuelto

El índice de base cero del elemento activo en una barra de herramientas.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETHOTITEM de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetImageList

Recupera la lista de imágenes que usa un control de barra de herramientas para mostrar botones en su estado predeterminado.

CImageList* GetImageList() const;

Valor devuelto

Un puntero a un objeto CImageList o NULL si no se establece una lista de imágenes.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETIMAGELIST de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetInsertMark

Recupera la marca de inserción actual de la barra de herramientas.

void GetInsertMark(TBINSERTMARK* ptbim) const;

Parámetros

ptbim
Un puntero a una estructura TBINSERTMARK que recibe la marca de inserción.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETINSERTMARK de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetInsertMarkColor

Recupera el color usado para dibujar la marca de inserción de la barra de herramientas.

COLORREF GetInsertMarkColor() const;

Valor devuelto

Un valor COLORREF que contiene el color de la marca de inserción actual.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETINSERTMARKCOLOR de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetItemRect

Recupera el rectángulo delimitador de un botón en un control de barra de herramientas.

BOOL GetItemRect(
    int nIndex,
    LPRECT lpRect) const;

Parámetros

nIndex
Índice de base cero del botón para el que se va a recuperar información.

lpRect
Dirección de una estructura RECT o un objeto CRect que recibe las coordenadas del rectángulo delimitador.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

Esta función no recupera el rectángulo delimitador de los botones cuyo estado está establecido en TBSTATE_HIDDEN.

CToolBarCtrl::GetMaxSize

Recupera el tamaño total de todos los botones y separadores visibles de la barra de herramientas.

BOOL GetMaxSize(LPSIZE pSize) const;

Parámetros

pSize
Un puntero a una estructura SIZE que recibe el tamaño de los elementos.

Valor devuelto

Si es correcta, su valor es distinto de cero. En caso contrario, es cero.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETMAXSIZE de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetMaxTextRows

Recupera el número máximo de filas de texto mostradas en un botón de barra de herramientas.

int GetMaxTextRows() const;

Valor devuelto

El número máximo de filas de texto mostradas en un botón de barra de herramientas.

CToolBarCtrl::GetMetrics

Recupera las métricas del objeto CToolBarCtrl.

void GetMetrics(LPTBMETRICS ptbm) const;

Parámetros

ptbm
Un puntero a la estructura TBMETRICS del objeto CToolBarCtrl.

Comentarios

Esta función miembro se usa para emular la funcionalidad del mensaje TB_GETMETRICS, tal como se describe en Windows SDK.

CToolBarCtrl::GetPadding

Recupera el relleno horizontal y vertical del control de barra de herramientas actual.

BOOL GetPadding(
    int* pnHorzPadding,
    int* pnVertPadding) const;

Parámetros

pnHorzPadding
[out] Un entero que recibe el relleno horizontal del control de la barra de herramientas, en píxeles.

pnVertPadding
[out] Un entero que recibe el relleno vertical del control de la barra de herramientas, en píxeles.

Valor devuelto

TRUE si este método es correcto; en caso contrario, FALSE.

Comentarios

Al usar este método, se envía el mensaje TB_GETPADDING, que se describe en Windows SDK.

CToolBarCtrl::GetPressedImageList

Recupera la lista de imágenes que usa el control de barra de herramientas actual para representar botones en el estado presionado.

CImageList* GetPressedImageList();

Valor devuelto

Un puntero a un CImageList que contiene la lista de imágenes para el control actual o NULL si no se establece dicha lista de imágenes.

Comentarios

Al usar este método, se envía el mensaje TB_GETPRESSEDIMAGELIST, que se describe en Windows SDK.

CToolBarCtrl::GetRect

Recupera el rectángulo de delimitación para un botón de barra de herramientas especificado.

BOOL GetRect(
    int nID,
    LPRECT lpRect) const;

Parámetros

nID
Identificador del botón.

lpRect
Puntero a una estructura RECT para recibir la información del rectángulo delimitador.

Valor devuelto

TRUE si es correcto; de lo contrario, FALSE.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETRECT de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetRows

Recupera el número de filas de botones que se muestran actualmente en el control de la barra de herramientas.

int GetRows() const;

Valor devuelto

Número de filas de botones que se muestran actualmente en la barra de herramientas.

Comentarios

Tenga en cuenta que el número de filas siempre será uno a menos que se haya creado la barra de herramientas con el estilo TBSTYLE_WRAPABLE.

CToolBarCtrl::GetState

Recupera información sobre el estado del botón especificado en un control de barra de herramientas, como si está habilitado, presionado o marcado.

int GetState(int nID) const;

Parámetros

nID
Identificador de comando del botón para el que se va a recuperar información.

Valor devuelto

Información de estado del botón si se ejecuta correctamente o -1 en caso contrario. La información de estado del botón puede ser una combinación de los valores enumerados en CToolBarCtrl::AddButtons.

Comentarios

Esta función es especialmente útil si desea recuperar más de uno de los estados del botón. Para recuperar un solo estado, use una de las siguientes funciones miembro: IsButtonEnabled, IsButtonChecked, IsButtonPressed, IsButtonHiddeno IsButtonIndeterminate. Sin embargo, la función miembro GetState es la única manera de detectar el estado del botónTBSTATE_WRAP.

CToolBarCtrl::GetString

Recupera una cadena de barra de herramientas.

int GetString(
    int nString,
    LPTSTR lpstrString,
    int cchMaxLen) const;

int GetString(
    int nString,
    CString& str) const;

Parámetros

nString
Índice de la cadena.

lpstrString
Puntero a un búfer usado para devolver la cadena.

cchMaxLen
Tamaño del búfer en bytes.

str
La cadena.

Valor devuelto

Longitud de la cadena si se ejecuta correctamente, -1 si no es así.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_GETSTRING de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::GetStyle

Obtiene los estilos aplicados actualmente a un control de barra de herramientas.

DWORD GetStyle() const;

Valor devuelto

Un DWORD que contiene una combinación de estilos de control de barra de herramientas, como se describe en Windows SDK.

CToolBarCtrl::GetToolTips

Recupera el manipulador del control de información sobre herramientas, si existe, asociado al control de barra de herramientas.

CToolTipCtrl* GetToolTips() const;

Valor devuelto

Un puntero al objeto CToolTipCtrl asociado a esta barra de herramientas o NULL si la barra de herramientas no tiene ningún control de información sobre herramientas asociado.

Comentarios

Dado que el control de la barra de herramientas normalmente crea y mantiene su propio control de información sobre herramientas, la mayoría de los programas no necesitan llamar a esta función.

CToolBarCtrl::HitTest

Determina dónde se encuentra un punto en un control de barra de herramientas.

int HitTest(LPPOINT ppt) const;

Parámetros

ppt
Un puntero a una estructura POINT que contiene la coordenada x de la prueba de posicionamiento en el miembro x y la coordenada y de la prueba de posicionamiento en el miembro y. Las coordenadas son relativas al área cliente de la barra de herramientas.

Valor devuelto

Valor entero que indica la ubicación de un punto en una barra de herramientas. Si el valor es cero o positivo, este valor devuelto es el índice de base cero del elemento no separador en el que se encuentra el punto.

Si el valor devuelto es negativo, el punto no se encuentra dentro de un botón. El valor absoluto del valor devuelto es el índice de un elemento separador o el elemento no separador más cercano.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_HITTEST de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::HideButton

Oculta o muestra el botón especificado en un control de barra de herramientas.

BOOL HideButton(
    int nID,
    BOOL bHide = TRUE);

Parámetros

nID
Identificador de comando del botón que se va a ocultar o mostrar.

bHide
TRUE para ocultar el botón, FALSE para mostrarlo.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

Si desea cambiar más de un estado de botón, considere la posibilidad de llamar a SetState en su lugar.

CToolBarCtrl::Indeterminate

Establece o borra el estado indeterminado del botón especificado en un control de barra de herramientas.

BOOL Indeterminate(
    int nID,
    BOOL bIndeterminate = TRUE);

Parámetros

nID
Identificador de comando del botón cuyo estado indeterminado se va a establecer o borrar.

bIndeterminate
TRUE para establecer el estado indeterminado para el botón especificado, FALSE para borrarlo.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

Los botones indeterminados se muestran atenuados, igual que el botón de negrita de la barra de herramientas de un procesador de texto cuando el texto seleccionado contiene caracteres tanto en negrita como normales. Si desea cambiar más de un estado de botón, considere la posibilidad de llamar a SetState en su lugar.

CToolBarCtrl::InsertButton

Inserta un botón en un control de barra de herramientas.

BOOL InsertButton(
    int nIndex,
    LPTBBUTTON lpButton);

Parámetros

nIndex
Índice de base cero de un botón. Esta función inserta el nuevo botón a la izquierda de este botón.

lpButton
Dirección de una estructura TBBUTTON que contiene información sobre el botón que se va a insertar. Consulte CToolBarCtrl::AddButtons para obtener una descripción de la estructura TBBUTTON.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

La imagen y/o cadena cuyo índice proporcione debe haberse agregado previamente a la lista del control de barra de herramientas mediante AddBitmap, AddStringy/o AddStrings.

CToolBarCtrl::InsertMarkHitTest

Recupera la información de la marca de inserción de un punto de una barra de herramientas.

BOOL InsertMarkHitTest(
    LPPOINT ppt,
    LPTBINSERTMARK ptbim) const;

Parámetros

ppt
Puntero a una estructura POINT que contiene las coordenadas de la prueba de posicionamiento, relativas al área cliente de la barra de herramientas.

ptbim
Un puntero a una estructura TBINSERTMARK que recibe la información de la marca de inserción.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_INSERTMARKHITTEST de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::IsButtonChecked

Determina si el botón especificado en un control de barra de herramientas está marcado.

BOOL IsButtonChecked(int nID) const;

Parámetros

nID
Identificador de comando del botón en la barra de herramientas.

Valor devuelto

Distinto de cero si el botón está marcado, de lo contrario, será cero.

Comentarios

Considere llamar a GetState si quiere recuperar más de un estado de botón.

CToolBarCtrl::IsButtonEnabled

Determina si el botón especificado en un control de barra de herramientas está activado.

BOOL IsButtonEnabled(int nID) const;

Parámetros

nID
Identificador de comando del botón en la barra de herramientas.

Valor devuelto

Distinto de cero si el control está activado, de lo contrario, será cero.

Comentarios

Considere llamar a GetState si quiere recuperar más de un estado de botón.

CToolBarCtrl::IsButtonHidden

Determina si el botón especificado en un control de barra de herramientas está oculto.

BOOL IsButtonHidden(int nID) const;

Parámetros

nID
Identificador de comando del botón en la barra de herramientas.

Valor devuelto

Distinto de cero si el botón está oculto, de lo contrario, será cero.

Comentarios

Considere llamar a GetState si quiere recuperar más de un estado de botón.

CToolBarCtrl::IsButtonHighlighted

Comprueba el estado de resaltado de un botón de la barra de herramientas.

BOOL IsButtonHighlighted(int nID) const;

Parámetros

nID
[in] Identificador de comando del botón de la barra de herramientas.

Valor devuelto

Entero positivo si el botón está resaltado, 0 si el botón no está resaltado o -1 si se produce un error.

CToolBarCtrl::IsButtonIndeterminate

Determina si el botón especificado en un control de barra de herramientas es indeterminado.

BOOL IsButtonIndeterminate(int nID) const;

Parámetros

nID
[in] Identificador de comando del botón en la barra de herramientas.

Valor devuelto

Entero positivo si el botón es indeterminado, cero si el botón no es indeterminado o -1 si se produce un error.

Comentarios

Los botones indeterminados se muestran atenuados, igual que el botón de negrita de la barra de herramientas de un procesador de texto cuando el texto seleccionado contiene caracteres tanto en negrita como normales. Considere llamar a GetState si quiere recuperar más de un estado de botón.

CToolBarCtrl::IsButtonPressed

Determina si el botón especificado en un control de barra de herramientas está presionado.

BOOL IsButtonPressed(int nID) const;

Parámetros

nID
Identificador de comando del botón en la barra de herramientas.

Valor devuelto

Distinto de cero si el botón está presionado, de lo contrario, será cero.

Comentarios

Considere llamar a GetState si quiere recuperar más de un estado de botón.

CToolBarCtrl::LoadImages

Carga mapas de bits en la lista de imágenes de un control de barra de herramientas.

void LoadImages(
    int iBitmapID,
    HINSTANCE hinst);

Parámetros

iBitmapID
Identificador de un mapa de bits que contiene las imágenes que se van a cargar. Para especificar su propio recurso de mapa de bits, establezca este parámetro en el identificador de un recurso de mapa de bits y establezca hInst en NULL. El recurso de mapa de bits se agregará a la lista de imágenes como una sola imagen. Puede agregar mapas de bits estándar definidos por el sistema estableciendo hinstHINST_COMMCTRL en y estableciendo este parámetro en uno de los siguientes identificadores:

Id. de mapa de bits Descripción
IDB_HIST_LARGE_COLOR Mapas de bits del explorador en tamaño grande
IDB_HIST_SMALL_COLOR Mapas de bits del explorador en tamaño pequeño
IDB_STD_LARGE_COLOR Mapas de bits estándar en tamaño grande
IDB_STD_SMALL_COLOR Mapas de bits estándar en tamaño pequeño
IDB_VIEW_LARGE_COLOR Ver mapas de bits en tamaño grande
IDB_VIEW_SMALL_COLOR Ver mapas de bits en tamaño pequeño

hinst
Manipulador de instancia del programa para la aplicación que realiza la llamada. Este parámetro puede ser HINST_COMMCTRL para cargar una lista de imágenes estándar.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_LOADIMAGES de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::MapAccelerator

Asigna un carácter de atajo a un botón de barra de herramientas.

BOOL MapAccelerator(
    TCHAR chAccel,
    UINT* pIDBtn);

Parámetros

chAccel
Carácter de atajo que se va a asignar. Este carácter es el mismo que se subraya en el texto del botón.

pIDBtn
Puntero a un UINT objeto que recibe el identificador de comando del botón que corresponde al carácter de atajo especificado en chAccel.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_MAPACCELERATOR de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::MarkButton

Establece el estado de resaltado de un botón determinado en un control de barra de herramientas.

BOOL MarkButton(
    int nID,
    BOOL fHighlight = TRUE);

Parámetros

nID
Identificador del botón.

fHighlight
Especifica el estado de resaltado que se va a establecer. De forma predeterminada, TRUE. Si se establece en FALSE, el botón se establece en su estado predeterminado.

Valor devuelto

Si es correcta, su valor es distinto de cero. En caso contrario, es cero.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_MARKBUTTON de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::MoveButton

Mueve un botón de un índice a otro.

BOOL MoveButton(
    UINT nOldPos,
    UINT nNewPos);

Parámetros

nOldPos
Índice de base cero del botón que se va a mover.

nNewPos
Índice de base cero del destino del botón.

Valor devuelto

Si es correcta, su valor es distinto de cero. En caso contrario, es cero.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_MOVEBUTTON de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::PressButton

Presiona o suelta el botón especificado en un control de barra de herramientas.

BOOL PressButton(int nID, BOOL bPress = TRUE);

Parámetros

nID
[in] Identificador de comando del botón que se va a presionar o soltar.

bPress
[in] TRUE para presionar el botón especificado, FALSE para soltarlo. El valor predeterminado es TRUE.

Valor devuelto

TRUE si el método es correcto; en caso contrario, FALSE.

Comentarios

Si desea cambiar más de un estado de botón, considere la posibilidad de llamar a SetState en su lugar.

Al usar este método, se envía el mensaje TB_PRESSBUTTON, que se describe en Windows SDK.

CToolBarCtrl::ReplaceBitmap

Reemplaza el mapa de bits existente en el control de barra de herramientas actual por un nuevo mapa de bits.

BOOL ReplaceBitmap(LPTBREPLACEBITMAP pReplaceBitmap);

Parámetros

pReplaceBitmap
[in] Puntero a una estructura TBREPLACEBITMAP que describe el mapa de bits que se va a reemplazar y el nuevo mapa de bits.

Valor devuelto

TRUE si este método es correcto; en caso contrario, FALSE.

Comentarios

Al usar este método, se envía el mensaje TB_REPLACEBITMAP, que se describe en Windows SDK.

Ejemplo

El siguiente código de ejemplo reemplaza el mapa de bits de la barra de herramientas estándar por otro diferente.

{
   // Replace one toolbar bitmap with another.
   TBREPLACEBITMAP tbrb;
   tbrb.hInstOld = ::AfxGetInstanceHandle();
   tbrb.nIDOld = IDR_MAINFRAME;
   tbrb.hInstNew = ::AfxGetInstanceHandle();
   tbrb.nIDNew = IDR_MAINFRAME1;
   tbrb.nButtons = 8;
   CToolBarCtrl &m_toolBarCtrl = m_wndToolBar.GetToolBarCtrl();
   BOOL bRet = m_toolBarCtrl.ReplaceBitmap(&tbrb);
}

CToolBarCtrl::RestoreState

Restaura el estado del control de barra de herramientas desde la ubicación del registro especificada por los parámetros.

void RestoreState(
    HKEY hKeyRoot,
    LPCTSTR lpszSubKey,
    LPCTSTR lpszValueName);

Parámetros

hKeyRoot
Identifica una clave actualmente abierta en el registro o cualquiera de los siguientes valores reservados de manipulador predefinidos:

  • HKEY_CLASSES_ROOT

  • HKEY_CURRENT_USER

  • HKEY_LOCAL_MACHINE

  • HKEY_USERS

lpszSubKey
Apunta a una cadena terminada en NULL que contiene el nombre de la subclave con la que está asociado un valor. Este parámetro puede ser NULL o un puntero a una cadena vacía. Si el parámetro es NULL, el valor se agregará a la clave identificada por el parámetro hKeyRoot.

lpszValueName
Apunta a una cadena que contiene el nombre del valor que se va a recuperar. Si un valor con este nombre aún no está presente en la clave, la función lo agrega a la clave.

CToolBarCtrl::SaveState

Guarda el estado del control de barra de herramientas en la ubicación del registro especificada por los parámetros.

void SaveState(
    HKEY hKeyRoot,
    LPCTSTR lpszSubKey,
    LPCTSTR lpszValueName);

Parámetros

hKeyRoot
Identifica una clave actualmente abierta en el registro o cualquiera de los siguientes valores reservados de manipulador predefinidos:

  • HKEY_CLASSES_ROOT

  • HKEY_CURRENT_USER

  • HKEY_LOCAL_MACHINE

  • HKEY_USERS

lpszSubKey
Apunta a una cadena terminada en NULL que contiene el nombre de la subclave con la que está asociado un valor. Este parámetro puede ser NULL o un puntero a una cadena vacía. Si el parámetro es NULL, el valor se agregará a la clave identificada por el parámetro hKeyRoot.

lpszValueName
Apunta a una cadena que contiene el nombre del valor que se va a establecer. Si un valor con este nombre aún no está presente en la clave, la función lo agrega a la clave.

CToolBarCtrl::SetAnchorHighlight

Establece la configuración de resaltado del delimitador de una barra de herramientas.

BOOL SetAnchorHighlight(BOOL fAnchor = TRUE);

Parámetros

fAnchor
[in] Especifica si el resaltado de delimitadores está habilitado o deshabilitado. Si este valor es distinto de cero, se habilitará el resaltado de delimitadores. Si este valor es cero, se deshabilitará el resaltado de delimitadores.

Valor devuelto

La configuración anterior del delimitador. Si el resaltado estaba habilitado, este valor es distinto de cero. Si el resaltado no estaba habilitado, este valor es cero.

Comentarios

Este método, implementa el comportamiento del mensaje TB_SETANCHORHIGHLIGHT de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::SetBitmapSize

Establece el tamaño de las imágenes del mapa de bits actuales para agregarlas a un control de barra de herramientas.

BOOL SetBitmapSize(CSize size);

Parámetros

size
Ancho y alto, en píxeles, de las imágenes del mapa de bits.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

Solo se debe llamar a esta función antes de agregar mapas de bits a la barra de herramientas. Si la aplicación no establece explícitamente el tamaño del mapa de bits, el valor predeterminado es 16 por 15 píxeles.

CToolBarCtrl::SetButtonInfo

Establece la información de un botón existente en una barra de herramientas.

BOOL SetButtonInfo(
    int nID,
    TBBUTTONINFO* ptbbi);

Parámetros

nID
Identificador del botón.

ptbbi
Un puntero a una estructura TBBUTTONINFO que recibe la información del botón.

Valor devuelto

Si es correcta, su valor es distinto de cero. En caso contrario, es cero.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_SETBUTTONINFO de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::SetButtonSize

Establece el tamaño de los botones del control de la barra de herramientas.

BOOL SetButtonSize(CSize size);

Parámetros

size
Ancho y alto, en píxeles, de los botones.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

El tamaño del botón siempre debe ser, como mínimo, tan grande como el tamaño del mapa de bits que incluye. Solo se debe llamar a esta función antes de agregar mapas de bits a la barra de herramientas. Si la aplicación no establece explícitamente el tamaño del botón, el valor predeterminado es 24 por 22 píxeles.

Ejemplo

Vea el ejemplo de CToolBar::GetToolBarCtrl.

CToolBarCtrl::SetButtonStructSize

Especifica el tamaño de la estructura TBBUTTON.

void SetButtonStructSize(int nSize);

Parámetros

nSize
Tamaño, en bytes, de la estructura TBBUTTON.

Comentarios

Si desea almacenar datos adicionales en la estructura TBBUTTON, puede o bien derivar una nueva estructura de TBBUTTON, agregando los miembros necesarios, o bien crear una nueva estructura que contenga una estructura TBBUTTON como su primer miembro. Entonces llamaría a esta función para comunicar al control de la barra de herramientas el tamaño de la nueva estructura.

Consulte CToolBarCtrl::AddButtons para obtener más información sobre la estructura TBBUTTON.

CToolBarCtrl::SetButtonWidth

Establece el ancho mínimo y máximo del botón en el control de barra de herramientas.

BOOL SetButtonWidth(
    int cxMin,
    int cxMax);

Parámetros

cxMin
Ancho mínimo del botón, en píxeles. Los botones de la barra de herramientas nunca serán más estrechos que este valor.

cxMax
Ancho máximo del botón, en píxeles. Si el texto del botón es demasiado ancho, el control lo muestra con puntos suspensivos.

Valor devuelto

Si es correcta, su valor es distinto de cero. En caso contrario, es cero.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_SETBUTTONWIDTH de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::SetCmdID

Establece el identificador de comando que se va a enviar a la ventana propietaria cuando se presiona el botón especificado.

BOOL SetCmdID(
    int nIndex,
    UINT nID);

Parámetros

nIndex
Índice de base cero del botón cuyo identificador de comando se va a establecer.

nID
Identificador de comando en el que se va a establecer el botón seleccionado.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

CToolBarCtrl::SetColorScheme

Recupera la combinación de colores del control de la barra de herramientas actual.

void SetColorScheme(const COLORSCHEME* lpColorScheme);

Parámetros

lpColorScheme
[in] Puntero a una estructura COLORSCHEME que describe el color de resaltado y el color de sombreado del control de barra de herramientas.

Comentarios

Este método no tiene efecto si hay un tema visual de Windows Vista establecido.

Al usar este método, se envía el mensaje TB_SETCOLORSCHEME, que se describe en Windows SDK.

Ejemplo

El código de ejemplo siguiente establece la combinación de colores para el control de barra de herramientas actual. El código de ejemplo hace que los bordes izquierdo y superior de cada botón de herramienta sean rojos, y los bordes derecho e inferior azules. Cuando el usuario presiona el botón, los bordes rojos se vuelven azules y los azules se vuelven rojos.

//Set color scheme for the current toolbar control.
//Make the left and top edges of the tool button red,
//and the right and bottom edges blue. The colors
//reverse when a button is pressed.
//This method has no effect if the Vista visual theme
//is set.
{
   COLORSCHEME cs;
   cs.dwSize = sizeof(COLORSCHEME);
   cs.clrBtnHighlight = RGB(255, 0, 0);
   cs.clrBtnShadow = RGB(0, 0, 255);
   CToolBarCtrl &m_toolBarCtrl = m_wndToolBar.GetToolBarCtrl();
   m_toolBarCtrl.SetColorScheme(&cs);
}

CToolBarCtrl::SetDisabledImageList

Establece la lista de imágenes que usará el control de barra de herramientas para mostrar botones deshabilitados.

CImageList* SetDisabledImageList(CImageList* pImageList);

Parámetros

pImageList
Puntero a un objeto CImageList que contiene las imágenes que va a usar el control de barra de herramientas para mostrar imágenes de botones deshabilitados.

Valor devuelto

Puntero a un objeto CImageList usado anteriormente por el control de barra de herramientas para mostrar imágenes de botones deshabilitados.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_SETDISABLEDIMAGELIST de Win32, tal y como se describe en Windows SDK. La implementación de MFC de SetDisabledImageList usa un objeto CImageList que contiene las imágenes de botones deshabilitados del control de la barra de herramientas, en lugar de un manipulador para una lista de imágenes.

CToolBarCtrl::SetDrawTextFlags

Establece las marcas de la función DrawText de Win32, que se usa para dibujar el texto en el rectángulo especificado, con formato acorde a cómo se han establecido las marcas.

DWORD SetDrawTextFlags(
    DWORD dwMask,
    DWORD dwDTFlags);

Parámetros

dwMask
Combinación de una o varias de las marcas DT_, especificadas en la función DrawText de Win32, que indica qué bits de dwDTFlags se usarán al dibujar el texto.

dwDTFlags
Combinación de una o varias marcas DT_, especificadas en la función DrawText de Win32, indicando cómo se dibujará el texto del botón. Este valor se pasa a DrawText cuando se dibuja el texto del botón.

Valor devuelto

Un DWORD que contiene las marcas de dibujo de texto anteriores.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_SETDRAWTEXTFLAGS de Win32, tal y como se describe en Windows SDK. Esta función miembro establece las marcas de la función DrawText de Win32, que dibuja texto en el rectángulo especificado con el formato acorde a cómo se han establecido las marcas.

CToolBarCtrl::SetExtendedStyle

Establece los estilos extendidos de un control de barra de herramientas.

DWORD SetExtendedStyle(DWORD dwExStyle);

Parámetros

dwExStyle
Valor que especifica los nuevos estilos extendidos. Este parámetro puede ser una combinación de los estilos extendidos de la barra de herramientas.

Valor devuelto

Un DWORD que representa los estilos extendidos anteriores. Para obtener una lista de estilos, consulte Estilos extendidos de la barra de herramientas, en Windows SDK.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_SETEXTENDEDSTYLE de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::SetHotImageList

Establece la lista de imágenes que usará el control de barra de herramientas para mostrar botones rápidos.

CImageList* SetHotImageList(CImageList* pImageList);

Parámetros

pImageList
Puntero a un objeto CImageList que contiene las imágenes que va a usar el control de barra de herramientas para mostrar imágenes de botones rápidos.

Valor devuelto

Puntero a un objeto CImageList usado anteriormente por el control de barra de herramientas para mostrar imágenes de botones rápidos.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_SETHOTIMAGELIST de Win32, tal y como se describe en Windows SDK.

La implementación de MFC de SetHotImageList usa un objeto CImageList que contiene las imágenes de botones rápidos del control de la barra de herramientas, en lugar de un manipulador para una lista de imágenes. Un botón rápido aparece resaltado al pasar por encima el puntero.

CToolBarCtrl::SetHotItem

Establece el elemento rápido en una barra de herramientas.

int SetHotItem(int nHot);

Parámetros

nHot
Número de índice de base cero del elemento que se hará rápido. Si este valor es -1, ninguno de los elementos será rápido.

Valor devuelto

Índice del elemento rápido anterior o -1 si no había ninguno.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_SETHOTITEM de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::SetImageList

Establece la lista de imágenes que usará la barra de herramientas para mostrar botones que estén en su estado predeterminado.

CImageList* SetImageList(CImageList* pImageList);

Parámetros

pImageList
Puntero a un objeto CImageList que contiene las imágenes que va a usar el control de barra de herramientas para mostrar imágenes de botones en estado predeterminado.

Valor devuelto

Puntero a un objeto CImageList usado anteriormente por el control de barra de herramientas para mostrar imágenes de botones en estado predeterminado.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_SETIMAGELIST de Win32, tal y como se describe en Windows SDK.

La implementación de MFC de SetImageList usa un objeto CImageList que contiene las imágenes de botones del control de la barra de herramientas, en lugar de un manipulador para una lista de imágenes.

CToolBarCtrl::SetIndent

Establece la sangría del primer botón de un control de barra de herramientas.

BOOL SetIndent(int iIndent);

Parámetros

iIndent
Valor que especifica la sangría, en píxeles.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

CToolBarCtrl::SetInsertMark

Establece la marca de inserción actual de la barra de herramientas.

void SetInsertMark(TBINSERTMARK* ptbim);

Parámetros

ptbim
Puntero a la estructura TBINSERTMARK que contiene la marca de inserción.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_SETINSERTMARK de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::SetInsertMarkColor

Establece el color usado para dibujar la marca de inserción de la barra de herramientas.

COLORREF SetInsertMarkColor(COLORREF clrNew);

Parámetros

clrNew
Un valor COLORREF que contiene el nuevo color de la marca de inserción.

Valor devuelto

Un valor COLORREF que contiene el anterior color de la marca de inserción.

Comentarios

En esta función miembro, se implementa el comportamiento del mensaje TB_SETINSERTMARKCOLOR de Win32, tal y como se describe en Windows SDK.

CToolBarCtrl::SetMaxTextRows

Establece el número máximo de filas de texto mostradas en un botón de barra de herramientas.

BOOL SetMaxTextRows(int iMaxRows);

Parámetros

iMaxRows
Número máximo de filas que se establecerán.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

CToolBarCtrl::SetMetrics

Establece las métricas del objeto CToolBarCtrl.

void SetMetrics(LPTBMETRICS ptbm);

Parámetros

ptbm
Un puntero a la estructura TBMETRICS del objeto CToolBarCtrl.

Comentarios

Esta función miembro se usa para emular la funcionalidad del mensaje TB_SETMETRICS, tal como se describe en Windows SDK.

CToolBarCtrl::SetOwner

Establece la ventana propietaria del control de barra de herramientas.

void SetOwner(CWnd* pWnd);

Parámetros

pWnd
Puntero al objeto derivado de CWnd o CWnd que será la nueva ventana propietaria del control de barra de herramientas.

Comentarios

La ventana propietaria es la ventana que recibe notificaciones de la barra de herramientas.

CToolBarCtrl::SetPadding

Establece el relleno horizontal y vertical del control de barra de herramientas actual.

DWORD SetPadding(
    int nHorzPadding,
    int nVertPadding);

Parámetros

nHorzPadding
[in] Especifica el relleno horizontal del control de barra de herramientas, en píxeles.

nVertPadding
[in] Especifica el relleno vertical del control de barra de herramientas, en píxeles.

Valor devuelto

Un DWORD cuya palabra baja contiene el valor de relleno horizontal anterior y cuya palabra alta contiene el valor de relleno vertical anterior. Los valores de relleno se miden en píxeles.

Comentarios

Al usar este método, se envía el mensaje TB_SETPADDING, que se describe en Windows SDK.

Ejemplo

El ejemplo de código siguiente establece el relleno horizontal y vertical del control de la barra de herramientas actual en 20 píxeles.

{
   // Set the horizontal and vertical padding of the current
   // toolbar control.
   CToolBarCtrl &m_toolBarCtrl = m_wndToolBar.GetToolBarCtrl();
   m_toolBarCtrl.SetPadding(50, 50);
}

CToolBarCtrl::SetPressedImageList

Establece la lista de imágenes que usa el control de barra de herramientas actual para representar botones en estado presionado.

CImagelist* SetPressedImageList(
    int iImageID,
    CImageList* pImageList);

Parámetros

iImageID
[in] Índice de base cero de la lista de imágenes. Establezca este parámetro en cero si usa solo una lista de imágenes.

pImageList
[in] Puntero a un objeto CImageList que contiene la nueva lista de imágenes.

Valor devuelto

Un puntero a un CImageList que contiene la anterior lista de imágenes para el control actual, o NULL si no se estableció dicha lista de imágenes.

Comentarios

Al usar este método, se envía el mensaje TB_SETPRESSEDIMAGELIST, que se describe en Windows SDK.

Ejemplo

El siguiente código de ejemplo establece que la lista de imágenes presionadas sea la misma que la de imágenes predeterminadas.

{
   // SetPressedImageList
   // Set the pressed image list to be the same as the
   // normal image list.
   CToolBarCtrl &m_toolBarCtrl = m_wndToolBar.GetToolBarCtrl();
   CImageList *pNormalCil = m_toolBarCtrl.GetImageList();
   CImageList *pPressedCil = m_toolBarCtrl.GetPressedImageList();
   m_toolBarCtrl.SetPressedImageList(0, pNormalCil);
}

CToolBarCtrl::SetRows

Pide al control de barra de herramientas que cambie su tamaño al número solicitado de filas.

void SetRows(
    int nRows,
    BOOL bLarger,
    LPRECT lpRect);

Parámetros

nRows
Número de filas solicitadas.

bLarger
Indica si se deben usar más filas o menos filas si no se puede cambiar el tamaño de la barra de herramientas al número solicitado de filas.

lpRect
Apunta al objeto CRect o a la estructura RECT que recibirá el nuevo rectángulo delimitador de la barra de herramientas.

Comentarios

Si la barra de herramientas no puede cambiar su tamaño al número o las filas solicitados, se cambiará de tamaño a la siguiente tamaño válido mayor o siguiente más pequeño, en función del valor de bLarger. Si bLarger es TRUE, el nuevo número de filas será mayor que el solicitado. Si bLarger es FALSE, el nuevo número de filas será menor que el solicitado.

Un número determinado de filas es válido para la barra de herramientas si los botones se pueden organizar de forma que todas las filas tengan el mismo número de botones (excepto, quizá, la última fila). Por ejemplo, una barra de herramientas que contiene cuatro botones no se puede ajustar a tres filas porque las dos últimas filas tendrían que ser más cortas. Si intentara ajustar su tamaño a tres filas, obtendría cuatro filas si bLarger fuera TRUE y dos filas si bLarger fuera FALSE.

Si hay separadores en la barra de herramientas, las reglas sobre qué número determinado de filas es válido son más complicados. El diseño se calcula de forma que los grupos de botones (botones con un separador antes del primero y el último botón del grupo) nunca se dividen en varias filas a menos que el grupo no se ajuste a una fila.

Si un grupo no cabe en una fila, el siguiente grupo se iniciará en la fila siguiente, incluso si cabe en la fila en la que finalizó el grupo grande. El propósito de esta regla es hacer que la separación entre grupos grandes sea más notable. Los separadores verticales resultantes se cuentan como filas.

Tenga en cuenta también que la función miembro SetRows siempre elegirá el diseño que resulte en el tamaño de barra de herramientas más pequeño posible. Crear una barra de herramientas con el estilo TBSTYLE_WRAPABLE y cambiar después el tamaño del control simplemente aplicará el método descrito anteriormente según el ancho del control.

Solo se puede llamar a esta función para las barras de herramientas que se crearon con el estilo TBSTYLE_WRAPABLE.

CToolBarCtrl::SetState

Establece el estado del botón especificado en un control de barra de herramientas.

BOOL SetState(
    int nID,
    UINT nState);

Parámetros

nID
Identificador de comando del botón.

nState
Marcas de estado. Puede ser una combinación de los valores enumerados para los estados de los botones en CToolBarCtrl::AddButtons.

Valor devuelto

Es distinto de cero si es correcto. En caso contrario, es cero.

Comentarios

Esta función es especialmente útil si desea establecer más de uno de los estados del botón. Para establecer un solo estado, use una de las siguientes funciones miembro: EnableButton, CheckButton, HideButton, Indeterminateo PressButton.

CToolBarCtrl::SetStyle

Establece los estilos de un control de barra de herramientas.

void SetStyle(DWORD dwStyle);

Parámetros

dwStyle
Un DWORD que contiene una combinación de estilos de control de barra de herramientas, como se describe en Windows SDK.

CToolBarCtrl::SetToolTips

Asocia un control de información sobre herramientas con un control de barra de herramientas.

void SetToolTips(CToolTipCtrl* pTip);

Parámetros

pTip
Puntero al objeto CToolTipCtrl.

CToolBarCtrl::SetWindowTheme

Establece el estilo visual del objeto CToolBarCtrl.

HRESULT SetWindowTheme(LPCWSTR pszSubAppName);

Parámetros

pszSubAppName
Un puntero con una cadena Unicode que contiene el estilo visual de la barra de herramientas que se va a establecer.

Valor devuelto

No se usa el valor devuelto.

Comentarios

Esta función miembro se usa para emular la funcionalidad del mensaje TB_SETWINDOWTHEME, tal como se describe en Windows SDK.

Consulte también

Ejemplo de MFCCMNCTRL1
Ejemplo de MFCMFCIE
CWnd (clase)
Gráfico de jerarquías
CToolBar (clase)