Clase CMFCButton
La clase CMFCButton
agrega funcionalidad a la clase CButton
tal como alinear el texto del botón, combinar el texto del botón y una imagen, seleccionar un cursor y especificar una información sobre herramientas.
Sintaxis
class CMFCButton : public CButton
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
CMFCButton::CMFCButton |
Constructor predeterminado. |
CMFCButton::~CMFCButton |
Destructor. |
Métodos públicos
Nombre | Descripción |
---|---|
CMFCButton::CleanUp |
Restablece variables internas y libera recursos asignados como imágenes, mapas de bits e iconos. |
CMFCButton::CreateObject |
Usado por el marco de trabajo para crear una instancia dinámica de este tipo de clase. |
CMFCButton::DrawItem |
El marco lo llama cuando ha cambiado un aspecto visual de un botón dibujado por el propietario. (Invalida CButton::DrawItem ). |
CMFCButton::EnableFullTextTooltip |
Especifica si se va a mostrar el texto completo de la información sobre herramientas en una ventana de información sobre herramientas grande o una versión truncada del texto en una pequeña ventana de herramientas. |
CMFCButton::EnableMenuFont |
Especifica si la fuente de texto del botón es la misma que la fuente del menú de la aplicación. |
CMFCButton::EnableWindowsTheming |
Especifica si el estilo del borde del botón corresponde al tema actual de Windows. |
CMFCButton::GetThisClass |
El marco de trabajo usa este elemento para obtener un puntero al objeto CRuntimeClass asociado a este tipo de clase. |
CMFCButton::GetToolTipCtrl |
Devuelve una referencia al control de herramientas subyacente. |
CMFCButton::IsAutoCheck |
Indica si una casilla o un botón de radio es un botón automático. |
CMFCButton::IsAutorepeatCommandMode |
Indica si un botón está establecido en modo de repetición automática. |
CMFCButton::IsCheckBox |
Indica si un botón es un botón de casilla. |
CMFCButton::IsChecked |
Indica si el botón actual está activado o no. |
CMFCButton::IsHighlighted |
Indica si un botón está resaltado. |
CMFCButton::IsPressed |
Indica si se presiona y resalta un botón. |
CMFCButton::IsPushed |
Indica si se presiona un botón. |
CMFCButton::IsRadioButton |
Indica si un botón es un botón de radio. |
CMFCButton::IsWindowsThemingEnabled |
Especifica si el estilo del borde del botón corresponde al tema actual de Windows. |
CMFCButton::OnDrawParentBackground |
Dibuja el fondo del elemento primario de un botón en el área especificada. (Invalida AFX_GLOBAL_DATA::DrawParentBackground ) |
CMFCButton::PreTranslateMessage |
Traslada los mensajes de la ventana antes de enviarlos a las funciones de Windows TranslateMessage y DispatchMessage . (Invalida CWnd::PreTranslateMessage ). |
CMFCButton::SetAutorepeatMode |
Establece un botón en modo de repetición automática. |
CMFCButton::SetCheckedImage |
Establece la imagen de un botón activado. |
CMFCButton::SetFaceColor |
Establece el color de fondo del texto del botón. |
CMFCButton::SetImage |
Establece la imagen de un botón. |
CMFCButton::SetMouseCursor |
Establece la imagen del cursor. |
CMFCButton::SetMouseCursorHand |
Establece el cursor en la imagen de una mano. |
CMFCButton::SetStdImage |
Usa un objeto CMenuImages para establecer la imagen del botón. |
CMFCButton::SetTextColor |
Establece el color del texto del botón para un botón que no está seleccionado. |
CMFCButton::SetTextHotColor |
Establece el color del texto del botón para un botón que está seleccionado. |
CMFCButton::SetTooltip |
Asocia una información sobre herramientas con un botón. |
CMFCButton::SizeToContent |
Cambia el tamaño de un botón para contener su imagen y texto de botón. |
Métodos protegidos
Nombre | Descripción |
---|---|
CMFCButton::OnDraw |
Lo llama el marco para dibujar un botón. |
CMFCButton::OnDrawBorder |
Lo llama el marco para dibujar el borde de un botón. |
CMFCButton::OnDrawFocusRect |
Lo llama el marco para dibujar el rectángulo de enfoque de un botón. |
CMFCButton::OnDrawText |
Lo llama el marco para dibujar el texto del botón. |
CMFCButton::OnFillBackground |
Lo llama el marco para dibujar el fondo del texto del botón. |
CMFCButton::SelectFont |
Recupera la fuente asociada con el contexto del dispositivo especificado. |
Miembros de datos
Nombre | Descripción |
---|---|
CMFCButton::m_nAlignStyle |
Especifica la alineación del texto del botón. |
CMFCButton::m_bDontUseWinXPTheme |
Especifica si se deben usar temas de Windows XP. |
CMFCButton::m_bDrawFocus |
Indica si se debe dibujar un rectángulo de enfoque alrededor de un botón. |
CMFCButton::m_nFlatStyle |
Especifica el estilo del botón, como sin bordes, plano, semiplano o 3D. |
CMFCButton::m_bGrayDisabled |
Cuando es TRUE, habilita dibujar un botón deshabilitado como atenuado. |
CMFCButton::m_bHighlightChecked |
Indica si se debe resaltar un botón de estilo BS_CHECKBOX cuando el cursor pasa sobre él. |
CMFCButton::m_bResponseOnButtonDown |
Indica si se debe responder a eventos de botón presionado. |
CMFCButton::m_bRightImage |
Indica si se va a mostrar una imagen en el lado derecho del botón. |
CMFCButton::m_bTopImage |
Indica si la imagen está encima del botón. |
CMFCButton::m_bTransparent |
Indica si el botón está transparente. |
CMFCButton::m_bWasDblClk |
Indica si el último evento de clic era un doble clic. |
Comentarios
Otros tipos de botones se derivan de la clase CMFCButton
, como la clase CMFCURLLinkButton
, que admite hipervínculos y la clase CMFCColorButton
, que admite un cuadro de diálogo selector de colores.
El estilo de un objeto CMFCButton
puede ser 3D
, flat
, semi-flat
o no border
. El texto del botón se puede alinear a la izquierda, en la parte superior o en el centro de un botón. En tiempo de ejecución, puede controlar si el botón muestra texto, una imagen o texto y una imagen. También puede especificar que se muestre una imagen de cursor determinada cuando el cursor pasa sobre un botón.
Cree un control de botón ya sea directamente en el código o mediante la herramienta Asistente para clases MFC y una plantilla del cuadro de diálogo. Si crea un control de botón directamente, agregue una variable CMFCButton
a la aplicación y después llame al constructor y a los métodos Create
del objeto CMFCButton
. Si usa el Asistente para clases MFC, agregue una variable CButton
a su aplicación y después cambie el tipo de la variable de CButton
a CMFCButton
.
Para controlar los mensajes de notificación en una aplicación de cuadro de diálogo, agregue una entrada de asignación de mensajes y un controlador de eventos por cada notificación. Las notificaciones enviadas por un objeto CMFCButton
son las mismas que las enviadas por un objeto CButton
.
Ejemplo
En el ejemplo siguiente se muestra cómo configurar las propiedades del botón mediante varios métodos de la clase CMFCButton
. El ejemplo forma parte del ejemplo de controles nuevos.
CMFCButton m_Button;
// int m_iImage
// IDB_BTN1_32, IDB_BTN1_HOT_32, IDB_BTN1, IDB_BTN1_HOT are int macros that are #define.
if (m_iImage == 1)
{
m_Button.SetImage((HBITMAP)NULL);
}
else
{
m_Button.SetImage(IDB_BTN1_32, IDB_BTN1_HOT_32);
}
// int m_iImage
if (m_iImage == 0)
{
m_Button.SetWindowText(_T(""));
}
else
{
m_Button.SetWindowText(_T("Button"));
}
// Resize the button.
m_Button.SizeToContent();
m_Button.EnableFullTextTooltip(true);
// Use the application menu font at the button text font.
m_Button.EnableMenuFont();
// Use the current Windows theme to draw the button borders.
m_Button.EnableWindowsTheming(true);
// Set the button to auto-repeat mode.
m_Button.SetAutorepeatMode();
// Set the background color for the button text.
m_Button.SetFaceColor(RGB(255,0,0),true);
m_Button.SetTextColor(RGB(0,0,255));
// Set the tooltip of the button.
m_Button.SetTooltip(_T("this is a button!"));
Jerarquía de herencia
Requisitos
Encabezado: afxbutton.h
CMFCButton::CleanUp
Restablece variables internas y libera recursos asignados como imágenes, mapas de bits e iconos.
virtual void CleanUp();
CMFCButton::EnableFullTextTooltip
Especifica si se va a mostrar el texto completo de la información sobre herramientas en una ventana de información sobre herramientas grande o una versión truncada del texto en una pequeña ventana de herramientas.
void EnableFullTextTooltip(BOOL bOn=TRUE);
Parámetros
bOn
[in] TRUE
para mostrar todo el texto; FALSE
para mostrar texto truncado.
Comentarios
CMFCButton::EnableMenuFont
Especifica si la fuente de texto del botón es la misma que la fuente del menú de la aplicación.
void EnableMenuFont(
BOOL bOn=TRUE,
BOOL bRedraw=TRUE);
Parámetros
bOn
[in] TRUE
para usar la fuente del menú de la aplicación como fuente de texto del botón; FALSE
para usar la fuente del sistema. El valor predeterminado es TRUE
.
bRedraw
[in] TRUE
para volver a dibujar inmediatamente la pantalla; de lo contrario, FALSE
. El valor predeterminado es TRUE
.
Comentarios
Si no usa este método para especificar la fuente de texto del botón, puede especificar la fuente con el método CWnd::SetFont
. Si no especifica una fuente en absoluto, el marco establece una fuente predeterminada.
CMFCButton::EnableWindowsTheming
Especifica si el estilo del borde del botón corresponde al tema actual de Windows.
static void EnableWindowsTheming(BOOL bEnable = TRUE);
Parámetros
bEnable
[in] TRUE
para usar el tema actual de Windows para dibujar bordes de botón; FALSE
para no usar el tema de Windows. El valor predeterminado es TRUE
.
Comentarios
Este método afecta todos los botones de la aplicación que se derivan de la clase CMFCButton
.
CMFCButton::GetToolTipCtrl
Devuelve una referencia al control de herramientas subyacente.
CToolTipCtrl& GetToolTipCtrl();
Valor devuelto
Una referencia al control de información de herramientas subyacente.
Comentarios
CMFCButton::IsAutoCheck
Indica si una casilla o un botón de radio es un botón automático.
BOOL IsAutoCheck() const;
Valor devuelto
TRUE
si el botón tiene estilo BS_AUTOCHECKBOX
o BS_AUTORADIOBUTTON
; de lo contrario, FALSE
.
Comentarios
CMFCButton::IsAutorepeatCommandMode
Indica si un botón está establecido en modo de repetición automática.
BOOL IsAutorepeatCommandMode() const;
Valor devuelto
TRUE
si el botón está establecido en modo de repetición automática; de lo contrario, FALSE
.
Comentarios
Use el método CMFCButton::SetAutorepeatMode
para establecer un botón en el modo de repetición automática.
CMFCButton::IsCheckBox
Indica si un botón es un botón de casilla.
BOOL IsCheckBox() const;
Valor devuelto
TRUE
si el botón tiene un estilo BS_CHECKBOX
o BS_AUTOCHECKBOX
; de lo contrario, FALSE
.
Comentarios
CMFCButton::IsChecked
Indica si el botón actual está activado o no.
BOOL IsChecked() const;
Valor devuelto
TRUE
si el botón actual está activado; de lo contrario, FALSE
.
Comentarios
El marco usa diferentes maneras de indicar que se activan distintos tipos de botones. Por ejemplo, un botón de radio está activo cuando contiene un punto; una casilla está activa cuando contiene X
.
CMFCButton::IsHighlighted
Indica si un botón está resaltado.
BOOL IsHighlighted() const;
Valor devuelto
TRUE
si el botón está resaltado; de lo contrario, FALSE
.
Comentarios
Un botón se resalta cuando el mouse pasa sobre el botón.
CMFCButton::IsPressed
Indica si se presiona y resalta un botón.
BOOL IsPressed() const;
Valor devuelto
TRUE
si el botón está presionado; de lo contrario, FALSE
.
Comentarios
CMFCButton::IsPushed
Indica si se presiona un botón.
BOOL IsPushed() const;
Valor devuelto
TRUE
si el botón está presionado; de lo contrario, FALSE
.
Comentarios
CMFCButton::IsRadioButton
Indica si un botón es un botón de radio.
BOOL IsRadioButton() const;
Valor devuelto
TRUE
si el estilo del botón es BS_RADIOBUTTON
o BS_AUTORADIOBUTTON
; de lo contrario, FALSE
.
Comentarios
CMFCButton::IsWindowsThemingEnabled
Especifica si el estilo del borde del botón corresponde al tema actual de Windows.
static BOOL IsWindowsThemingEnabled();
Valor devuelto
TRUE
si el estilo del borde del botón corresponde al tema actual de Windows; de lo contrario, FALSE
.
CMFCButton::m_bDontUseWinXPTheme
Especifica si se deben usar temas de Windows XP al dibujar el botón.
BOOL m_bDontUseWinXPTheme;
CMFCButton::m_bDrawFocus
Indica si se debe dibujar un rectángulo de enfoque alrededor de un botón.
BOOL m_bDrawFocus;
Comentarios
Establezca el miembro m_bDrawFocus
en TRUE
para especificar que el marco dibujará un rectángulo de enfoque alrededor del texto y la imagen del botón si el botón recibe el enfoque.
El constructor CMFCButton
inicializa este miembro en TRUE
.
CMFCButton::m_bGrayDisabled
Cuando es TRUE
, habilita dibujar un botón deshabilitado como atenuado.
BOOL m_bGrayDisabled;
CMFCButton::m_bHighlightChecked
Indica si se debe resaltar un botón de estilo BS_CHECKBOX
cuando el cursor pasa sobre él.
BOOL m_bHighlightChecked;
Comentarios
Establezca el miembro m_bHighlightChecked
en TRUE
para especificar que el marco resaltará un botón BS_CHECKBOX
cuando el mouse pasa sobre él.
CMFCButton::m_bResponseOnButtonDown
Indica si se debe responder a eventos de botón presionado.
BOOL m_bResponseOnButtonDown;
CMFCButton::m_bRightImage
Indica si se va a mostrar una imagen en el lado derecho del botón.
BOOL m_bRightImage;
CMFCButton::m_bTopImage](#m_bTopImage)
Indica si la imagen está encima del botón.
BOOL m_bTopImage;
Comentarios
Establezca el miembro m_bRightImage
en TRUE
para especificar que el marco mostrará la imagen del botón a la derecha de la etiqueta de texto del botón.
CMFCButton::m_bTransparent
Indica si el botón está transparente.
BOOL m_bTransparent;
Comentarios
Establezca el miembro m_bTransparent
en TRUE
para especificar que el marco hará que el botón sea transparente. El constructor CMFCButton
inicializa este miembro en FALSE
.
CMFCButton::m_nAlignStyle
Especifica la alineación del texto del botón.
AlignStyle m_nAlignStyle;
Comentarios
Use uno de los siguientes valores de enumeración CMFCButton::AlignStyle
para especificar la alineación del texto del botón:
Valor | Descripción |
---|---|
ALIGN_CENTER |
(Valor predeterminado) Alinea el texto del botón con el centro del botón. |
ALIGN_LEFT |
Alinea el texto del botón al lado izquierdo del botón. |
ALIGN_RIGHT |
Alinea el texto del botón al lado derecho del botón. |
El constructor CMFCButton
inicializa este miembro en ALIGN_CENTER
.
CMFCButton::m_bWasDblClk
](#m_bWasDblClk)|
Indica si el último evento de clic era un doble clic.
BOOL m_bWasDblClk;
CMFCButton::m_nFlatStyle
Especifica el estilo del botón, como sin bordes, plano, semiplano o 3D.
FlatStyle m_nFlatStyle;
Comentarios
En la tabla siguiente se enumeran los valores de enumeración CMFCButton::m_nFlatStyle
que especifican la apariencia de un botón.
Valor | Descripción |
---|---|
BUTTONSTYLE_3D |
(Valor predeterminado) El botón parece tener lados tridimensionales altos. Cuando se hace clic en el botón, el botón parece presionarse en una sangría profunda. |
BUTTONSTYLE_FLAT |
Cuando el mouse no se detiene sobre el botón, el botón parece ser bidimensional y no tiene lados elevados. Cuando el mouse se pausa sobre el botón, el botón parece tener lados tridimensionales bajos. Cuando se hace clic en el botón, el botón parece presionarse en una sangría superficial. |
BUTTONSTYLE_SEMIFLAT |
El botón parece tener lados tridimensionales bajos. Cuando se hace clic en el botón, el botón parece presionarse en una sangría profunda. |
BUTTONSTYLE_NOBORDERS |
El botón no tiene lados elevados y siempre aparece bidimensional. El botón no parece presionarse en una sangría cuando se hace clic en él. |
El constructor CMFCButton
inicializa este miembro en BUTTONSTYLE_3D
.
Ejemplo
En el ejemplo siguiente se muestra cómo establecer los valores de la variable de miembro m_nFlatStyle
en la clase CMFCButton
. Este ejemplo forma parte del ejemplo de controles nuevos.
CMFCButton m_Button;
//int m_iBorderStyle
switch (m_iBorderStyle)
{
case 0:
m_Button.m_nFlatStyle = CMFCButton::BUTTONSTYLE_FLAT;
break;
case 1:
m_Button.m_nFlatStyle = CMFCButton::BUTTONSTYLE_SEMIFLAT;
break;
case 2:
m_Button.m_nFlatStyle = CMFCButton::BUTTONSTYLE_3D;
}
CMFCButton::OnDraw
Lo llama el marco para dibujar un botón.
virtual void OnDraw(
CDC* pDC,
const CRect& rect,
UINT uiState);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rect
[in] Una referencia a un rectángulo que limita el botón.
uiState
[in] El estado actual del botón. Para obtener más información, consulte el miembro itemState
del tema DRAWITEMSTRUCT
Estructura.
Comentarios
Invalide este método para usar su propio código para dibujar un botón.
CMFCButton::OnDrawBorder
Lo llama el marco para dibujar el borde de un botón.
virtual void OnDrawBorder(
CDC* pDC,
CRect& rectClient,
UINT uiState);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rectClient
[in] Una referencia a un rectángulo que limita el botón.
uiState
[in] El estado actual del botón. Para obtener más información, consulte el miembro itemState
del tema DRAWITEMSTRUCT
Estructura.
Comentarios
Invalide este método para usar su propio código para dibujar un borde.
CMFCButton::OnDrawFocusRect
Lo llama el marco para dibujar el rectángulo de enfoque de un botón.
virtual void OnDrawFocusRect(
CDC* pDC,
const CRect& rectClient);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rectClient
[in] Una referencia a un rectángulo que limita el botón.
Comentarios
Invalide este método para usar su propio código para dibujar un rectángulo de enfoque.
CMFCButton::OnDrawText
Lo llama el marco para dibujar el texto del botón.
virtual void OnDrawText(
CDC* pDC,
const CRect& rect,
const CString& strText,
UINT uiDTFlags,
UINT uiState);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rect
[in] Una referencia a un rectángulo que limita el botón.
strText
[in] El texto que se va a dibujar.
uiDTFlags
[in] Marcas que especifican cómo dar formato al texto. Para obtener más información, consulte el parámetro nFormat
del método CDC::DrawText
.
uiState
[in] Reservado.
Comentarios
Invalide este método para usar su propio código para dibujar el texto del botón.
CMFCButton::OnFillBackground
Lo llama el marco para dibujar el fondo del texto del botón.
virtual void OnFillBackground(
CDC* pDC,
const CRect& rectClient);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rectClient
[in] Una referencia a un rectángulo que limita el botón.
Comentarios
Invalide este método para usar su propio código para dibujar el fondo de un botón.
CMFCButton::SelectFont
Recupera la fuente asociada con el contexto del dispositivo especificado.
virtual CFont* SelectFont(CDC* pDC);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
Valor devuelto
Invalide este método para usar su propio código para recuperar la fuente.
Comentarios
CMFCButton::SetAutorepeatMode
Establece un botón en modo de repetición automática.
void SetAutorepeatMode(int nTimeDelay=500);
Parámetros
nTimeDelay
[in] Número no negativo que especifica el intervalo entre los mensajes que se envían a la ventana primaria. El intervalo se mide en milisegundos y su valor predeterminado es de 500 milisegundos. Especifique cero para deshabilitar el modo de mensajes de repetición automática.
Comentarios
Este método ocasiona que el botón envíe mensajes de WM_COMMAND
constantemente a la ventana primaria hasta que se libere el botón o el parámetro nTimeDelay
se establezca en cero.
CMFCButton::SetCheckedImage
Establece la imagen de un botón activado.
void SetCheckedImage(
HICON hIcon,
BOOL bAutoDestroy=TRUE,
HICON hIconHot=NULL,
HICON hIconDisabled=NULL,
BOOL bAlphaBlend=FALSE);
void SetCheckedImage(
HBITMAP hBitmap,
BOOL bAutoDestroy=TRUE,
HBITMAP hBitmapHot=NULL,
BOOL bMap3dColors=TRUE,
HBITMAP hBitmapDisabled=NULL);
void SetCheckedImage(
UINT uiBmpResId,
UINT uiBmpHotResId=0,
UINT uiBmpDsblResID=0);
Parámetros
hIcon
[in] Manipulador para el icono que contiene el mapa de bits y la máscara de la nueva imagen.
bAutoDestroy
[in] TRUE
para especificar que los recursos de mapa de bits se destruyan automáticamente; de lo contrario, FALSE
. El valor predeterminado es TRUE
.
hIconHot
[in] Manipulador del icono que contiene la imagen del estado seleccionado.
hBitmap
[in] Manipulador del mapa de bits que contiene la imagen del estado no seleccionado.
hBitmapHot
[in] Manipulador del mapa de bits que contiene la imagen del estado seleccionado.
bMap3dColors
[in] Especifica un color transparente para el fondo del botón; es decir, la cara del botón. TRUE
para utilizar el valor de color RGB (192, 192, 192); FALSE
para usar el valor de color definido por AFX_GLOBAL_DATA::clrBtnFace
.
uiBmpResId
[in] Id. de recurso de la imagen no seleccionada.
uiBmpHotResId
[in] Id. de recurso de la imagen seleccionada.
hIconDisabled
[in] Manipulador del icono de la imagen deshabilitada.
hBitmapDisabled
[in] Manipulador del mapa de bits que contiene la imagen deshabilitada.
uiBmpDsblResID
[in] Id. de recurso del mapa de bits deshabilitado.
bAlphaBlend
[in] TRUE
para usar solo imágenes de 32 bits que usan el canal alfa; FALSE
, para no usar solo imágenes de canal alfa. El valor predeterminado es FALSE
.
Comentarios
CMFCButton::SetFaceColor
Establece el color de fondo del texto del botón.
void SetFaceColor(
COLORREF crFace,
BOOL bRedraw=TRUE);
Parámetros
crFace
[in] Valor de color RGB.
bRedraw
[in] TRUE
para volver a dibujar la pantalla inmediatamente; de lo contrario, FALSE
.
Comentarios
Use este método para definir un nuevo color de relleno para el fondo del botón (cara). Tenga en cuenta que el fondo no se rellena cuando la variable miembro CMFCButton::m_bTransparent
es TRUE
.
CMFCButton::SetImage
Establece la imagen de un botón.
void SetImage(
HICON hIcon,
BOOL bAutoDestroy=TRUE,
HICON hIconHot=NULL,
HICON hIconDisabled=NULL,
BOOL bAlphaBlend=FALSE);
void SetImage(
HBITMAP hBitmap,
BOOL bAutoDestroy=TRUE,
HBITMAP hBitmapHot=NULL,
BOOL bMap3dColors=TRUE,
HBITMAP hBitmapDisabled=NULL);
void SetImage(
UINT uiBmpResId,
UINT uiBmpHotResId=0,
UINT uiBmpDsblResID=0);
Parámetros
hIcon
[in] Manipulador para el icono que contiene el mapa de bits y la máscara de la nueva imagen.
bAutoDestroy
[in] TRUE
para especificar que los recursos de mapa de bits se destruyan automáticamente; de lo contrario, FALSE
. El valor predeterminado es TRUE
.
hIconHot
[in] Manipulador del icono que contiene la imagen del estado seleccionado.
hBitmap
[in] Manipulador del mapa de bits que contiene la imagen del estado no seleccionado.
hBitmapHot
[in] Manipulador del mapa de bits que contiene la imagen del estado seleccionado.
uiBmpResId
[in] Id. de recurso de la imagen no seleccionada.
uiBmpHotResId
[in] Id. de recurso de la imagen seleccionada.
bMap3dColors
[in] Especifica un color transparente para el fondo del botón; es decir, la cara del botón. TRUE
para utilizar el valor de color RGB (192, 192, 192); FALSE
para usar el valor de color definido por AFX_GLOBAL_DATA::clrBtnFace
.
hIconDisabled
[in] Manipulador del icono de la imagen deshabilitada.
hBitmapDisabled
[in] Manipulador del mapa de bits que contiene la imagen deshabilitada.
uiBmpDsblResID
[in] Id. de recurso del mapa de bits deshabilitado.
bAlphaBlend
[in] TRUE
para usar solo imágenes de 32 bits que usan el canal alfa; FALSE
, para no usar solo imágenes de canal alfa. El valor predeterminado es FALSE
.
Comentarios
Ejemplo
En el ejemplo siguiente, se muestra cómo se usan varias versiones del método SetImage
de la clase CMFCButton
. El ejemplo forma parte del ejemplo de controles nuevos.
CMFCButton m_Button;
// int m_iImage
// IDB_BTN1_32, IDB_BTN1_HOT_32, IDB_BTN1, IDB_BTN1_HOT are int macros that are #define.
if (m_iImage == 1)
{
m_Button.SetImage((HBITMAP)NULL);
}
else
{
m_Button.SetImage(IDB_BTN1_32, IDB_BTN1_HOT_32);
}
CMFCButton::SetMouseCursor
Establece la imagen del cursor.
void SetMouseCursor(HCURSOR hcursor);
Parámetros
hcursor
[in] El manipulador de un cursor.
Comentarios
Use este método para asociar una imagen de cursor, como el cursor de mano, con el botón. El cursor se carga desde los recursos de la aplicación.
Ejemplo
El siguiente ejemplo muestra cómo se usa el método SetMouseCursor
de la clase CMFCButton
. El ejemplo forma parte del código en una muestra de controles nuevos.
CMFCButton m_Button;
// int m_iCursor
void CPage1::OnSetCursor()
{
UpdateData();
switch (m_iCursor)
{
case 0:
m_Button.SetMouseCursor(NULL);
break;
case 1:
m_Button.SetMouseCursorHand();
break;
case 2:
m_Button.SetMouseCursor(AfxGetApp()->LoadCursor(IDC_CURSOR));
break;
}
}
CMFCButton::SetMouseCursorHand
Establece el cursor en la imagen de una mano.
void SetMouseCursorHand();
Comentarios
Utilice este método para asociar la imagen del cursor de una mano con el botón. El cursor se carga desde los recursos de la aplicación.
CMFCButton::SetStdImage
Usa un objeto CMenuImages
para establecer la imagen del botón.
void SetStdImage(
CMenuImages::IMAGES_IDS id,
CMenuImages::IMAGE_STATE state=CMenuImages::ImageBlack,
CMenuImages::IMAGES_IDS idDisabled=(CMenuImages::IMAGES_IDS)0);
Parámetros
id
[in] Uno de los identificadores de imagen de botón que se define en la enumeración CMenuImage::IMAGES_IDS
. Los valores de imagen especifican imágenes como flechas, anclajes y botones de radio.
state
[in] Uno de los identificadores de estado de imagen del botón que se define en la enumeración CMenuImages::IMAGE_STATE
. Los estados de la imagen especifican colores de botón como negro, gris, gris claro, blanco y gris oscuro. El valor predeterminado es CMenuImages::ImageBlack
.
idDisabled
[in] Uno de los identificadores de imagen de botón que se define en la enumeración CMenuImage::IMAGES_IDS
. La imagen indica que el botón está deshabilitado. El valor predeterminado es la primera imagen de botón (CMenuImages::IdArrowDown
).
Comentarios
CMFCButton::SetTextColor
Establece el color del texto del botón para un botón que no está seleccionado.
void SetTextColor(COLORREF clrText);
Parámetros
clrText
[in] Valor de color RGB.
Comentarios
CMFCButton::SetTextHotColor
Establece el color del texto del botón para un botón que está seleccionado.
void SetTextHotColor(COLORREF clrTextHot);
Parámetros
clrTextHot
[in] Valor de color RGB.
Comentarios
CMFCButton::SetTooltip
Asocia una información sobre herramientas con un botón.
void SetTooltip(LPCTSTR lpszToolTipText);
Parámetros
lpszToolTipText
[in] Puntero que apunta al texto de la información sobre herramientas. Especifique NULL
para deshabilitar la información sobre herramientas.
Comentarios
CMFCButton::SizeToContent
Cambia el tamaño de un botón para contener su imagen y texto de botón.
virtual CSize SizeToContent(BOOL bCalcOnly=FALSE);
Parámetros
bCalcOnly
[in] TRUE
para calcular, pero no cambiar, el nuevo tamaño del botón; FALSE
para cambiar el tamaño del botón. El valor predeterminado es FALSE
.
Valor devuelto
Un objeto CSize
que contiene el nuevo tamaño del botón.
Comentarios
De forma predeterminada, este método calcula un nuevo tamaño que incluye un margen horizontal de 10 píxeles y un margen vertical de 5 píxeles.
Consulte también
Gráfico de jerarquías
Clases
CMFCLinkCtrl
(clase)
CMFCColorButton
(clase)
CMFCMenuButton
(clase)