MFC - Botón de mapa de bits

UN bitmap buttonmuestra una imagen o una imagen y texto en su cara. Esto generalmente tiene la intención de hacer que el botón sea un poco explícito. Se crea un botón de mapa de bits utilizando elCBitmapButton class, que se deriva de CButton.

Aquí está la lista de métodos en la clase CBitmapButton.

No Señor. Nombre y descripción
1

AutoLoad

Asocia un botón en un cuadro de diálogo con un objeto de la clase CBitmapButton, carga los mapas de bits por nombre y ajusta el tamaño del botón para que se ajuste al mapa de bits.

2

LoadBitmaps

Inicializa el objeto cargando uno o más recursos de mapa de bits con nombre desde el archivo de recursos de la aplicación y adjuntando los mapas de bits al objeto.

3

SizeToContent

Cambia el tamaño del botón al tamaño de los mapas de bits.

Aquí está la lista de mapeo de mensajes para el control del botón de mapa de bits:

Mensaje Entrada de mapa Descripción
BN_CLICKED ON_BN_CLICKED (<id>, <memberFxn>) El marco llama a esta función miembro cuando se hace clic en el botón.
BN_DISABLE ON_BN_DISABLE (<id>, <memberFxn>) El marco llama a esta función miembro cuando el botón está desactivado.
BN_DOUBLECLICKED ON_BN_DOUBLECLICKED (<id>, <memberFxn>) El marco llama a esta función miembro cuando se hace doble clic en el botón.
BN_PAINT ON_BN_PAINT (<id>, <memberFxn>) El marco llama a esta función miembro cuando una aplicación solicita volver a pintar un botón.

Veamos un ejemplo simple creando un nuevo proyecto.

Step 1 - Agregar un mapa de bits desde el cuadro de diálogo Agregar recurso.

Step 2 - Seleccione Mapa de bits y haga clic en Nuevo.

Step 3 - Diseñe su mapa de bits y cambie su ID a IDB_BITMAP_START como se muestra arriba.

Step 4 - Agregue un botón a su cuadro de diálogo y también agregue una Variable de control m_buttonStart para ese botón.

Step 5- Agregue una variable de mapa de bits en su archivo de encabezado. Ahora puede ver las siguientes dos variables.

CBitmap m_bitmapStart;
CButton m_buttonStart;

Step 6 - Modifique su método OnInitDialog () como se muestra en el siguiente código.

m_bitmapStart.LoadBitmap(IDB_BITMAP_START);
HBITMAP hBitmap = (HBITMAP)m_bitmapStart.GetSafeHandle();
m_buttonStart.SetBitmap(hBitmap);

Step 7 - Cuando se compile y ejecute el código anterior, verá el siguiente resultado.