Compartir por


Implementación de barra de herramientas de MFC

Una barra de herramientas es una barra de control que contiene imágenes de mapa de bits de controles. Estas imágenes se comportan como botones de comando, casillas o botones de radio. MFC suministra la clase CToolbar para administrar las barras de herramientas.

Si se habilita, los usuarios de las barras de herramientas de MFC pueden acoplarlas al borde de una ventana o hacerlas "flotar" en cualquier parte dentro de la ventana de la aplicación. MFC no admite barras de herramientas personalizables como las del entorno de desarrollo.

MFC admite también información sobre herramientas: pequeñas ventanas emergentes que describen el propósito de un botón de la barra de herramientas cuando se coloca el mouse sobre el botón. De forma predeterminada, cuando el usuario presiona un botón de la barra de herramientas, aparece una cadena de estado en la barra de estado (si hay una). Se puede activar la actualización de la barra de estado al "sobrevolar" para mostrar la cadena de estado cuando el mouse se coloca sobre el botón sin presionarlo.

Nota:

A partir de la versión 4.0 de MFC, las barras de herramientas y la información sobre herramientas se implementan con la funcionalidad de Windows 95 y versiones posteriores, en lugar de usar la implementación anterior específica de MFC.

Por compatibilidad con versiones anteriores, MFC conserva la implementación más antigua de la barra de herramientas en la clase COldToolBar. En la documentación de versiones anteriores de MFC se describe COldToolBar en CToolBar.

Puede crear la primera barra de herramientas de un programa si selecciona la opción Barra de herramientas en el Asistente para aplicaciones. También puede crear barras de herramientas adicionales.

En este artículo se presenta lo siguiente:

Botones de la barra de herramientas

Los botones de una barra de herramientas son análogos a los elementos de un menú. Ambos tipos de objetos de la interfaz de usuario generan comandos, que se pueden administrar mediante las funciones de controlador que el programa proporciona. Los botones de la barra de herramientas duplican a menudo la funcionalidad de los comandos de menú y proporcionan una interfaz de usuario alternativa para la misma funcionalidad. Para organizar esta duplicación de forma sencilla, asigne el mismo id. al botón y al elemento de menú.

Puede hacer que los botones de una barra de herramientas aparezcan y se comporten como botones de comando, las casillas o los botones de radio. Para más información, vea la clase CToolBar.

Barras de herramientas de acoplamiento y flotantes

Una barra de herramientas de MFC puede:

  • Mantenerse estática a lo largo de un lado de la ventana primaria.

  • Arrastrarse y "acoplarse", o asociarse, a cualquier lado o lados de la ventana primaria que el usuario especifique.

  • "Flotar", o desasociarse de la ventana marco, en su propia ventana minimarco para que el usuario pueda moverla a cualquier posición adecuada.

  • Cambiar de tamaño mientras flota.

Para más información, vea el artículo Barras de herramientas de acoplamiento y flotantes.

Barras de herramientas y herramientas Recomendaciones

También se puede hacer que las barras de herramientas de MFC muestren "información sobre herramientas", que son ventanas emergentes minúsculas que contienen una breve descripción de texto del propósito de un botón de la barra de herramientas. Cuando el usuario mueve el mouse sobre un botón de la barra de herramientas, la ventana de información sobre herramientas emerge para proporcionar una sugerencia. Para más información, vea el artículo Información sobre herramientas de la barra de herramientas.

Clases CToolBar y CToolBarCtrl

Las barras de herramientas de la aplicación se administran mediante la clase CToolBar. A partir de la versión 4.0 de MFC, CToolBar se ha implementado de nuevo para utilizar el control común de barra de herramientas que está disponible en Windows 95 o versiones posteriores y en Windows NT versión 3.51 o versiones posteriores.

Esta nueva implementación da lugar a menos código MFC para las barras de herramientas, porque MFC utiliza la compatibilidad con el sistema operativo. La nueva implementación también mejora la capacidad. Puede usar las funciones miembro CToolBar para manipular las barras de herramientas o puede obtener una referencia al objeto subyacente CToolBarCtrl y llamar a sus funciones miembro para la personalización de la barra de herramientas y funcionalidad adicional.

Sugerencia

Si ha invertido mucho en la implementación MFC anterior de CToolBar, esa compatibilidad sigue estando disponible. Vea el artículo Uso de las barras de herramientas anteriores.

Vea también el ejemplo general de MFC DOCKTOOL.

Mapa de bits de la barra de herramientas

Una vez construido, un objeto CToolBar carga un solo mapa de bits que contiene una imagen de cada botón para crear la imagen de la barra de herramientas. El Asistente para aplicaciones crea un mapa de bits de barra de herramientas estándar que se puede personalizar con el editor de barras de herramientas de Visual C++.

Qué más quieres saber

Consulte también

Barras de herramientas
Editor de barras de herramientas