Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Classe
A classe CMFCButton adiciona funcionalidade à classe CButton, como alinhar texto do botão, combinar texto do botão e uma imagem, selecionar um cursor e especificar uma dica de ferramenta.
Sintaxe
class CMFCButton : public CButton
Membros
Construtores públicos
| Nome | Descrição |
|---|---|
CMFCButton::CMFCButton |
Construtor padrão. |
CMFCButton::~CMFCButton |
Destruidor. |
Métodos públicos
| Nome | Descrição |
|---|---|
CMFCButton::CleanUp |
Redefine as variáveis internas e libera os recursos alocados, como imagens, bitmaps e ícones. |
CMFCButton::CreateObject |
Usado pela estrutura para criar uma instância dinâmica desse tipo de classe. |
CMFCButton::DrawItem |
Chamado pela estrutura quando um aspecto visual de um botão desenhado pelo proprietário foi alterado. (Substitui CButton::DrawItem.) |
CMFCButton::EnableFullTextTooltip |
Especifica se é necessário exibir o texto completo de uma dica de ferramenta em uma janela de dica de ferramenta grande ou uma versão truncada do texto em uma pequena janela de dica de ferramenta. |
CMFCButton::EnableMenuFont |
Especifica se a fonte de texto do botão é igual à fonte de menu do aplicativo. |
CMFCButton::EnableWindowsTheming |
Especifica se o estilo da borda do botão corresponde ao tema atual do Windows. |
CMFCButton::GetThisClass |
Usado pela estrutura para obter um ponteiro para o objeto CRuntimeClass associado a esse tipo de classe. |
CMFCButton::GetToolTipCtrl |
Retorna uma referência ao controle de dica de ferramenta subjacente. |
CMFCButton::IsAutoCheck |
Indica se uma caixa de seleção ou botão de opção é um botão automático. |
CMFCButton::IsAutorepeatCommandMode |
Indica se um botão está definido como modo de repetição automática. |
CMFCButton::IsCheckBox |
Indica se um botão é um botão de caixa de seleção. |
CMFCButton::IsChecked |
Indica se o botão atual está marcado. |
CMFCButton::IsHighlighted |
Indica se um botão está realçado. |
CMFCButton::IsPressed |
Indica se um botão está pressionado e realçado. |
CMFCButton::IsPushed |
Indica se um botão está pressionado. |
CMFCButton::IsRadioButton |
Indica se um botão é um botão de opção. |
CMFCButton::IsWindowsThemingEnabled |
Indica se o estilo da borda do botão corresponde ao tema atual do Windows. |
CMFCButton::OnDrawParentBackground |
Desenha a tela de fundo do pai de um botão na área especificada. (Substitui AFX_GLOBAL_DATA::DrawParentBackground.) |
CMFCButton::PreTranslateMessage |
Converte mensagens de janela antes de serem expedidas para as funções TranslateMessage e DispatchMessage do Windows. (Substitui CWnd::PreTranslateMessage.) |
CMFCButton::SetAutorepeatMode |
Define um botão como modo de repetição automática. |
CMFCButton::SetCheckedImage |
Define a imagem de um botão marcado. |
CMFCButton::SetFaceColor |
Define a cor da tela de fundo para o texto do botão. |
CMFCButton::SetImage |
Define a imagem de um botão. |
CMFCButton::SetMouseCursor |
Define a imagem do cursor. |
CMFCButton::SetMouseCursorHand |
Define o cursor como a imagem de uma mão. |
CMFCButton::SetStdImage |
Usa um objeto CMenuImages para definir a imagem do botão. |
CMFCButton::SetTextColor |
Define a cor do texto do botão para um botão que não foi selecionado. |
CMFCButton::SetTextHotColor |
Define a cor do texto do botão para um botão que foi selecionado. |
CMFCButton::SetTooltip |
Associa uma dica de ferramenta a um botão. |
CMFCButton::SizeToContent |
Redimensiona um botão para conter o texto e a imagem do botão. |
Métodos protegidos
| Nome | Descrição |
|---|---|
CMFCButton::OnDraw |
Chamado pela estrutura para desenhar um botão. |
CMFCButton::OnDrawBorder |
Chamado pela estrutura para desenhar a borda de um botão. |
CMFCButton::OnDrawFocusRect |
Chamado pela estrutura para desenhar o retângulo de foco de um botão. |
CMFCButton::OnDrawText |
Chamado pela estrutura para desenhar o texto do botão. |
CMFCButton::OnFillBackground |
Chamado pela estrutura para desenhar o texto do botão. |
CMFCButton::SelectFont |
Recupera a fonte associada ao contexto do dispositivo especificado. |
Membros de dados
| Nome | Descrição |
|---|---|
CMFCButton::m_nAlignStyle |
Especifica o alinhamento do texto do botão. |
CMFCButton::m_bDontUseWinXPTheme |
Especifica se os temas do Windows XP devem ser usados. |
CMFCButton::m_bDrawFocus |
Indica se um retângulo de foco deve ser desenhado ao redor de um botão. |
CMFCButton::m_nFlatStyle |
Especifica o estilo do botão, por exemplo, sem bordas, plano, semiplano ou 3D. |
CMFCButton::m_bGrayDisabled |
Quando TRUE, permite que um botão desabilitado seja desenhado como esmaecido. |
CMFCButton::m_bHighlightChecked |
Indica se um botão de estilo BS_CHECKBOX deve ser realçado, quando o cursor passar sobre ele. |
CMFCButton::m_bResponseOnButtonDown |
Indica se deve responder a eventos de botão pressionado. |
CMFCButton::m_bRightImage |
Indica se deve exibir uma imagem no lado direito do botão. |
CMFCButton::m_bTopImage |
Indica se a imagem está na parte superior do botão. |
CMFCButton::m_bTransparent |
Indica se o botão é transparente. |
CMFCButton::m_bWasDblClk |
Indica se o último evento de clique foi um duplo clique. |
Comentários
Outros tipos de botões são derivados da classe CMFCButton, como a classe CMFCURLLinkButton, que dá suporte a hiperlinks, e a classe CMFCColorButton, que dá suporte a uma caixa de diálogo do seletor de cores.
O estilo de um objeto CMFCButton pode ser 3D, flat, semi-flat ou no border. O texto do botão pode ser alinhado à esquerda, à parte superior ou ao centro de um botão. Em tempo de execução, você pode controlar se o botão exibe o texto, uma imagem ou o texto e uma imagem. Você também pode especificar se uma imagem de cursor específica será exibida quando o cursor passar sobre um botão.
Crie um controle de botão diretamente no código ou usando a ferramenta Assistente de Classe do MFC e um modelo de caixa de diálogo. Se você criar um controle de botão diretamente, adicione uma variável CMFCButton ao aplicativo e chame o construtor e os métodos Create do objeto CMFCButton. Se você usar o Assistente de Classe do MFC, adicione uma variável CButton ao aplicativo e altere o tipo da variável de CButton para CMFCButton.
Para lidar com mensagens de notificação em um aplicativo de caixa de diálogo, adicione uma entrada de mapa de mensagens e um manipulador de eventos para cada notificação. As notificações enviadas por um objeto CMFCButton são as mesmas enviadas por um objeto CButton.
Exemplo
O exemplo a seguir demonstra como configurar as propriedades do botão usando vários métodos na classe CMFCButton. Este exemplo é parte do Exemplo de novos controles.
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!"));
Hierarquia de herança
Requisitos
Cabeçalho: afxbutton.h
CMFCButton::CleanUp
Redefine as variáveis internas e libera os recursos alocados, como imagens, bitmaps e ícones.
virtual void CleanUp();
CMFCButton::EnableFullTextTooltip
Especifica se é necessário exibir o texto completo de uma dica de ferramenta em uma janela de dica de ferramenta grande ou uma versão truncada do texto em uma pequena janela de dica de ferramenta.
void EnableFullTextTooltip(BOOL bOn=TRUE);
Parâmetros
bOn
[in] TRUE para exibir todo o texto. FALSE para exibir o texto truncado.
CMFCButton::EnableMenuFont
Especifica se a fonte de texto do botão é igual à fonte de menu do aplicativo.
void EnableMenuFont(
BOOL bOn=TRUE,
BOOL bRedraw=TRUE);
Parâmetros
bOn
[in] TRUE para usar a fonte do menu do aplicativo como a fonte de texto do botão. FALSE para usar a fonte do sistema. O padrão é TRUE.
bRedraw
[in] TRUE para redesenhar a tela imediatamente. Caso contrário, FALSE. O padrão é TRUE.
Comentários
Se você não usar esse método para especificar a fonte de texto do botão, poderá especificar a fonte com o método CWnd::SetFont. Se você não especificar uma fonte, a estrutura definirá uma fonte padrão.
CMFCButton::EnableWindowsTheming
Especifica se o estilo da borda do botão corresponde ao tema atual do Windows.
static void EnableWindowsTheming(BOOL bEnable = TRUE);
Parâmetros
bEnable
[in] TRUE para usar o tema atual do Windows para desenhar as bordas do botão. FALSE para não usar o tema do Windows. O padrão é TRUE.
Comentários
Esse método afeta todos os botões no aplicativo que são derivados da classe CMFCButton.
CMFCButton::GetToolTipCtrl
Retorna uma referência ao controle de dica de ferramenta subjacente.
CToolTipCtrl& GetToolTipCtrl();
Valor de retorno
Uma referência ao controle de dica de ferramenta subjacente.
CMFCButton::IsAutoCheck
Indica se uma caixa de seleção ou botão de opção é um botão automático.
BOOL IsAutoCheck() const;
Valor de retorno
TRUE se o botão tiver o estilo BS_AUTOCHECKBOX ou BS_AUTORADIOBUTTON. Caso contrário, FALSE.
CMFCButton::IsAutorepeatCommandMode
Indica se um botão está definido como modo de repetição automática.
BOOL IsAutorepeatCommandMode() const;
Valor de retorno
TRUE se o botão estiver definido como modo de repetição automática. Caso contrário, FALSE.
Comentários
Use o método CMFCButton::SetAutorepeatMode para definir um botão como modo de repetição automática.
CMFCButton::IsCheckBox
Indica se um botão é um botão de caixa de seleção.
BOOL IsCheckBox() const;
Valor de retorno
TRUE se o botão tiver um estilo BS_CHECKBOX ou BS_AUTOCHECKBOX. Caso contrário, FALSE.
CMFCButton::IsChecked
Indica se o botão atual está marcado.
BOOL IsChecked() const;
Valor de retorno
TRUE se o botão estiver marcado. Caso contrário, FALSE.
Comentários
A estrutura usa diferentes maneiras para indicar que diferentes tipos de botões estão marcados. Por exemplo, um botão de opção é marcado quando contém um ponto. Uma caixa de seleção é marcada quando contém um X.
CMFCButton::IsHighlighted
Indica se um botão está realçado.
BOOL IsHighlighted() const;
Valor de retorno
TRUE se o botão estiver realçado. Caso contrário, FALSE.
Comentários
Um botão é realçado quando o mouse passa sobre o botão.
CMFCButton::IsPressed
Indica se um botão está pressionado e realçado.
BOOL IsPressed() const;
Valor de retorno
TRUE se o botão estiver pressionado. Caso contrário, FALSE.
CMFCButton::IsPushed
Indica se um botão está pressionado.
BOOL IsPushed() const;
Valor de retorno
TRUE se o botão estiver pressionado. Caso contrário, FALSE.
CMFCButton::IsRadioButton
Indica se um botão é um botão de opção.
BOOL IsRadioButton() const;
Valor de retorno
TRUE se o estilo do botão for BS_RADIOBUTTON ou BS_AUTORADIOBUTTON. Caso contrário, FALSE.
CMFCButton::IsWindowsThemingEnabled
Indica se o estilo da borda do botão corresponde ao tema atual do Windows.
static BOOL IsWindowsThemingEnabled();
Valor de retorno
TRUE se o estilo da borda do botão corresponder ao tema atual do Windows. Caso contrário, FALSE.
CMFCButton::m_bDontUseWinXPTheme
Especifica se os temas do Windows XP devem ser usados ao desenhar o botão.
BOOL m_bDontUseWinXPTheme;
CMFCButton::m_bDrawFocus
Indica se um retângulo de foco deve ser desenhado ao redor de um botão.
BOOL m_bDrawFocus;
Comentários
Defina o membro m_bDrawFocus como TRUE para especificar que a estrutura desenhará um retângulo de foco ao redor do texto e da imagem do botão, se o botão receber o foco.
O construtor CMFCButton inicializa esse membro para o TRUE.
CMFCButton::m_bGrayDisabled
Quando TRUE, permite que um botão desabilitado seja desenhado como esmaecido.
BOOL m_bGrayDisabled;
CMFCButton::m_bHighlightChecked
Indica se um botão de estilo BS_CHECKBOX deve ser realçado, quando o cursor passar sobre ele.
BOOL m_bHighlightChecked;
Comentários
Defina o membro m_bHighlightChecked como TRUE para especificar que a estrutura realçará um botão de estilo BS_CHECKBOX, quando o mouse passar sobre ele.
CMFCButton::m_bResponseOnButtonDown
Indica se deve responder a eventos de botão pressionado.
BOOL m_bResponseOnButtonDown;
CMFCButton::m_bRightImage
Indica se deve exibir uma imagem no lado direito do botão.
BOOL m_bRightImage;
CMFCButton::m_bTopImage
Indica se a imagem está na parte superior do botão.
BOOL m_bTopImage;
Comentários
Defina o membro m_bRightImage como TRUE para especificar que a estrutura exibirá a imagem do botão à direita do rótulo de texto do botão.
CMFCButton::m_bTransparent
Indica se o botão é transparente.
BOOL m_bTransparent;
Comentários
Defina o membro m_bTransparent como TRUE para especificar que a estrutura tornará o botão transparente. O construtor CMFCButton inicializa esse membro para o FALSE.
CMFCButton::m_nAlignStyle
Especifica o alinhamento do texto do botão.
AlignStyle m_nAlignStyle;
Comentários
Use um dos valores de enumeração CMFCButton::AlignStyle a seguir para especificar o alinhamento do texto do botão:
| Valor | Descrição |
|---|---|
ALIGN_CENTER |
(Padrão) Alinha o texto do botão ao centro do botão. |
ALIGN_LEFT |
Alinha o texto do botão ao lado esquerdo do botão. |
ALIGN_RIGHT |
Alinha o texto do botão ao lado direito do botão. |
O construtor CMFCButton inicializa esse membro para o ALIGN_CENTER.
CMFCButton::m_bWasDblClk
Indica se o último evento de clique foi um duplo clique.
BOOL m_bWasDblClk;
CMFCButton::m_nFlatStyle
Especifica o estilo do botão, por exemplo, sem bordas, plano, semiplano ou 3D.
FlatStyle m_nFlatStyle;
Comentários
A tabela a seguir lista os valores de enumeração CMFCButton::m_nFlatStyle que especificam a aparência de um botão.
| Valor | Descrição |
|---|---|
BUTTONSTYLE_3D |
(Padrão) Parece que o botão tem lados tridimensionais altos. Ao clicar no botão, parece que ele foi pressionado em um recuo profundo. |
BUTTONSTYLE_FLAT |
Quando o mouse não pausa sobre o botão, parece que o botão é bidimensional e não tem lados elevados. Quando o mouse pausa sobre o botão, parece que o botão tem lados tridimensionais baixos. Ao clicar no botão, parece que ele foi pressionado em um recuo raso. |
BUTTONSTYLE_SEMIFLAT |
Parece que o botão tem lados tridimensionais baixos. Ao clicar no botão, parece que ele foi pressionado em um recuo profundo. |
BUTTONSTYLE_NOBORDERS |
O botão não tem lados elevados e parece que é sempre bidimensional. Não parece que o botão foi pressionado em um recuo, quando clicado. |
O construtor CMFCButton inicializa esse membro para o BUTTONSTYLE_3D.
Exemplo
O exemplo a seguir demonstra como definir os valores das variáveis de membro m_nFlatStyle na classe CMFCButton. Este exemplo faz parte da amostra de Novos Controles.
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
Chamado pela estrutura para desenhar um botão.
virtual void OnDraw(
CDC* pDC,
const CRect& rect,
UINT uiState);
Parâmetros
pDC
[in] Um ponteiro para um contexto de dispositivo.
rect
[in] Uma referência a um retângulo que vincula o botão.
uiState
[in] O estado do botão atual. Para obter mais informações, confira o membro itemState do tópico DRAWITEMSTRUCTEstrutura.
Comentários
Substitua esse método para usar seu próprio código para desenhar um botão.
CMFCButton::OnDrawBorder
Chamado pela estrutura para desenhar a borda de um botão.
virtual void OnDrawBorder(
CDC* pDC,
CRect& rectClient,
UINT uiState);
Parâmetros
pDC
[in] Um ponteiro para um contexto de dispositivo.
rectClient
[in] Uma referência a um retângulo que vincula o botão.
uiState
[in] O estado do botão atual. Para obter mais informações, confira o membro itemState do tópico DRAWITEMSTRUCTEstrutura.
Comentários
Substitua esse método para usar seu próprio código para desenhar a borda.
CMFCButton::OnDrawFocusRect
Chamado pela estrutura para desenhar o retângulo de foco de um botão.
virtual void OnDrawFocusRect(
CDC* pDC,
const CRect& rectClient);
Parâmetros
pDC
[in] Um ponteiro para um contexto de dispositivo.
rectClient
[in] Uma referência a um retângulo que vincula o botão.
Comentários
Substitua esse método para usar seu próprio código para desenhar o retângulo de foco.
CMFCButton::OnDrawText
Chamado pela estrutura para desenhar o texto do botão.
virtual void OnDrawText(
CDC* pDC,
const CRect& rect,
const CString& strText,
UINT uiDTFlags,
UINT uiState);
Parâmetros
pDC
[in] Um ponteiro para um contexto de dispositivo.
rect
[in] Uma referência a um retângulo que vincula o botão.
strText
[in] O texto a ser desenhado.
uiDTFlags
[in] Sinalizadores que especificam como formatar o texto. Para obter mais informações, consulte o parâmetro nFormat do método CDC::DrawText.
uiState
[in] Reservado.
Comentários
Substitua esse método para usar seu próprio código para desenhar o texto do botão.
CMFCButton::OnFillBackground
Chamado pela estrutura para desenhar o texto do botão.
virtual void OnFillBackground(
CDC* pDC,
const CRect& rectClient);
Parâmetros
pDC
[in] Um ponteiro para um contexto de dispositivo.
rectClient
[in] Uma referência a um retângulo que vincula o botão.
Comentários
Substitua esse método para usar seu próprio código para desenhar a tela de fundo de um botão.
CMFCButton::SelectFont
Recupera a fonte associada ao contexto do dispositivo especificado.
virtual CFont* SelectFont(CDC* pDC);
Parâmetros
pDC
[in] Um ponteiro para um contexto de dispositivo.
Valor de retorno
Substitua esse método para usar seu próprio código para recuperar a fonte.
CMFCButton::SetAutorepeatMode
Define um botão como modo de repetição automática.
void SetAutorepeatMode(int nTimeDelay=500);
Parâmetros
nTimeDelay
[in] Um número não negativo que especifica o intervalo entre as mensagens enviadas para a janela pai. O intervalo é medido em milissegundos e o valor padrão é 500 milissegundos. Especifique zero para desabilitar o modo de mensagem de repetição automática.
Comentários
Esse método faz com que o botão envie WM_COMMAND mensagens constantemente para a janela pai, até que o botão seja liberado ou que o parâmetro nTimeDelay seja definido como zero.
CMFCButton::SetCheckedImage
Define a imagem de um botão marcado.
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] Identificador do ícone que contém o bitmap e a máscara para a nova imagem.
bAutoDestroy
[in] TRUE para especificar que os recursos de bitmap sejam destruídos automaticamente. Caso contrário, FALSE. O padrão é TRUE.
hIconHot
[in] Identificador para o ícone que contém a imagem do estado selecionado.
hBitmap
[in] Identificador para o bitmap que contém a imagem do estado não selecionado.
hBitmapHot
[in] Identificador para o bitmap que contém a imagem do estado selecionado.
bMap3dColors
[in] Especifica uma cor transparente para a tela de fundo do botão, ou seja, o rosto do botão.
TRUE para usar o valor de cor RGB(192, 192, 192). FALSE para usar o valor de cor definido por AFX_GLOBAL_DATA::clrBtnFace.
uiBmpResId
[in] ID do recurso para a imagem não selecionada.
uiBmpHotResId
[in] ID do recurso para a imagem selecionada.
hIconDisabled
[in] Identificador para o ícone da imagem desabilitada.
hBitmapDisabled
[in] Identificador para o bitmap que contém a imagem desabilitada.
uiBmpDsblResID
[in] ID do recurso do bitmap desabilitado.
bAlphaBlend
[in] TRUE para usar apenas imagens de 32 bits que usam o canal alfa. FALSE para não usar apenas imagens do canal alfa. O padrão é FALSE.
CMFCButton::SetFaceColor
Define a cor da tela de fundo para o texto do botão.
void SetFaceColor(
COLORREF crFace,
BOOL bRedraw=TRUE);
Parâmetros
crFace
[in] Um valor de cor RGB.
bRedraw
[in] TRUE para redesenhar a tela imediatamente. Caso contrário, FALSE.
Comentários
Use esse método para definir uma nova cor de preenchimento para a tela de fundo do botão (rosto). Observe que a tela de fundo não é preenchida quando a variável de membro CMFCButton::m_bTransparent é TRUE.
CMFCButton::SetImage
Define a imagem de um botão.
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] Identificador do ícone que contém o bitmap e a máscara para a nova imagem.
bAutoDestroy
[in] TRUE para especificar que os recursos de bitmap sejam destruídos automaticamente. Caso contrário, FALSE. O padrão é TRUE.
hIconHot
[in] Identificador para o ícone que contém a imagem do estado selecionado.
hBitmap
[in] Identificador para o bitmap que contém a imagem do estado não selecionado.
hBitmapHot
[in] Identificador para o bitmap que contém a imagem do estado selecionado.
uiBmpResId
[in] ID do recurso para a imagem não selecionada.
uiBmpHotResId
[in] ID do recurso para a imagem selecionada.
bMap3dColors
[in] Especifica uma cor transparente para a tela de fundo do botão, ou seja, o rosto do botão.
TRUE para usar o valor de cor RGB(192, 192, 192). FALSE para usar o valor de cor definido por AFX_GLOBAL_DATA::clrBtnFace.
hIconDisabled
[in] Identificador para o ícone da imagem desabilitada.
hBitmapDisabled
[in] Identificador para o bitmap que contém a imagem desabilitada.
uiBmpDsblResID
[in] ID do recurso do bitmap desabilitado.
bAlphaBlend
[in] TRUE para usar apenas imagens de 32 bits que usam o canal alfa. FALSE para não usar apenas imagens do canal alfa. O padrão é FALSE.
Exemplo
O exemplo a seguir demonstra como usar várias versões do método SetImage na classe CMFCButton. Este exemplo é parte do Exemplo de novos controles.
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
Define a imagem do cursor.
void SetMouseCursor(HCURSOR hcursor);
Parâmetros
hcursor
[in] O identificador de um cursor.
Comentários
Use esse método para associar uma imagem de cursor, como o cursor de mão, ao botão. O cursor é carregado a partir dos recursos do aplicativo.
Exemplo
O seguinte exemplo demonstra como usar o método SetMouseCursor na classe CMFCButton. O exemplo faz parte do código na amostra de Novos Controles.
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
Define o cursor como a imagem de uma mão.
void SetMouseCursorHand();
Comentários
Use esse método para associar a imagem do cursor de uma mão ao botão. O cursor é carregado a partir dos recursos do aplicativo.
CMFCButton::SetStdImage
Usa um objeto CMenuImages para definir a imagem do botão.
void SetStdImage(
CMenuImages::IMAGES_IDS id,
CMenuImages::IMAGE_STATE state=CMenuImages::ImageBlack,
CMenuImages::IMAGES_IDS idDisabled=(CMenuImages::IMAGES_IDS)0);
Parâmetros
id
[in] Um dos identificadores de imagem do botão definidos na enumeração CMenuImage::IMAGES_IDS. Os valores de imagem especificam imagens como setas, pinos e botões de opção.
state
[in] Um dos identificadores de estado de imagem do botão definidos na enumeração CMenuImages::IMAGE_STATE. Os estados de imagem especificam as cores de botão como preto, cinza, cinza claro, branco e cinza escuro. O valor padrão é CMenuImages::ImageBlack.
idDisabled
[in] Um dos identificadores de imagem do botão definidos na enumeração CMenuImage::IMAGES_IDS. A imagem indica que o botão está desabilitado. O valor padrão é a primeira imagem de botão (CMenuImages::IdArrowDown).
CMFCButton::SetTextColor
Define a cor do texto do botão para um botão que não foi selecionado.
void SetTextColor(COLORREF clrText);
Parâmetros
clrText
[in] Um valor de cor RGB.
CMFCButton::SetTextHotColor
Define a cor do texto do botão para um botão que foi selecionado.
void SetTextHotColor(COLORREF clrTextHot);
Parâmetros
clrTextHot
[in] Um valor de cor RGB.
CMFCButton::SetTooltip
Associa uma dica de ferramenta a um botão.
void SetTooltip(LPCTSTR lpszToolTipText);
Parâmetros
lpszToolTipText
[in] Ponteiro para o texto da dica de ferramenta. Especifique NULL para desabilitar a dica de ferramenta.
CMFCButton::SizeToContent
Redimensiona um botão para conter o texto e a imagem do botão.
virtual CSize SizeToContent(BOOL bCalcOnly=FALSE);
Parâmetros
bCalcOnly
[in] TRUE para calcular, mas não alterar o novo tamanho do botão. FALSE para alterar o tamanho do botão. O padrão é FALSE.
Valor de retorno
Um objeto CSize que contém o novo tamanho do botão.
Comentários
Por padrão, esse método calcula um novo tamanho que inclui uma margem horizontal de 10 pixels e uma margem vertical de 5 pixels.
Confira também
Gráfico da hierarquia
Classes
Classe CMFCLinkCtrl
Classe CMFCColorButton
Classe CMFCMenuButton