Partilhar via


CMFCButton Classe

A classe CMFCButton adiciona funcionalidade à classe CButton, como alinhar o texto do botão, combinar o 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

Designação Descrição
CMFCButton::CMFCButton Construtor padrão.
CMFCButton::~CMFCButton Destruidor.

Métodos Públicos

Designação Descrição
CMFCButton::CleanUp Redefine variáveis internas e libera 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 aspeto visual de um botão desenhado pelo proprietário foi alterado. (Substitui CButton::DrawItem.)
CMFCButton::EnableFullTextTooltip Especifica se o texto completo de uma dica de ferramenta deve ser exibido em uma janela de dica de ferramenta grande ou uma versão truncada do texto em uma janela pequena de dica de ferramenta.
CMFCButton::EnableMenuFont Especifica se a fonte de texto do botão é a mesma que a fonte do 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 para o 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 é pressionado e realçado.
CMFCButton::IsPushed Indica se um botão é 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 o plano de fundo do pai de um botão na área especificada. (Substitui AFX_GLOBAL_DATA::DrawParentBackground.)
CMFCButton::PreTranslateMessage Traduz mensagens de janela antes de serem enviadas para as funções TranslateMessage e DispatchMessage Windows. (Substitui CWnd::PreTranslateMessage.)
CMFCButton::SetAutorepeatMode Define um botão para o modo de repetição automática.
CMFCButton::SetCheckedImage Define a imagem para um botão marcado.
CMFCButton::SetFaceColor Define a cor do plano 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 para 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 está selecionado.
CMFCButton::SetTextHotColor Define a cor do texto do botão para um botão 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

Designação 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 para um botão.
CMFCButton::OnDrawText Chamado pela estrutura para desenhar o texto do botão.
CMFCButton::OnFillBackground Chamado pela estrutura para desenhar o plano de fundo do texto do botão.
CMFCButton::SelectFont Recupera a fonte associada ao contexto do dispositivo especificado.

Membros de dados

Designação 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, como sem bordas, plano, semiplano ou 3D.
CMFCButton::m_bGrayDisabled Quando TRUE, permite que um botão desativado seja desenhado como acinzentado.
CMFCButton::m_bHighlightChecked Indica se um botão estilo BS_CHECKBOX deve ser realçado quando o cursor passa sobre ele.
CMFCButton::m_bResponseOnButtonDown Indica se os eventos de botão para baixo devem ser respondidos.
CMFCButton::m_bRightImage Indica se uma imagem deve ser exibida 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 evento do último clique foi um clique duplo.

Comentários

Outros tipos de botões são derivados da classe CMFCButton, como a classe CMFCURLLinkButton, que oferece suporte a hiperlinks, e a classe CMFCColorButton, que oferece 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, na parte superior ou no centro de um botão. Em tempo de execução, você pode controlar se o botão exibe texto, uma imagem ou texto e uma imagem. Você também pode especificar que uma determinada imagem do cursor seja exibida quando o cursor passar sobre um botão.

Crie um controle de botão diretamente em seu código ou usando a ferramenta MFC Class Wizard e um modelo de caixa de diálogo. Se você criar um controle button diretamente, adicione uma variável CMFCButton ao seu aplicativo e, em seguida, chame o construtor e Create métodos do objeto CMFCButton. Se você usar o Assistente de classe MFC , adicione uma variável CButton ao seu aplicativo e, em seguida, 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. O exemplo faz parte do exemplo New Controls.

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

CObject

CCmdTarget

CWnd

CButton

CMFCButton

Requerimentos

Cabeçalho:afxbutton.h

CMFCButton::CleanUp

Redefine variáveis internas e libera recursos alocados, como imagens, bitmaps e ícones.

virtual void CleanUp();

CMFCButton::EnableFullTextTooltip

Especifica se o texto completo de uma dica de ferramenta deve ser exibido em uma janela de dica de ferramenta grande ou uma versão truncada do texto em uma janela pequena de dica de ferramenta.

void EnableFullTextTooltip(BOOL bOn=TRUE);

Parâmetros

bOn
[em] TRUE para exibir todo o texto; FALSE exibir texto truncado.

CMFCButton::EnableMenuFont

Especifica se a fonte de texto do botão é a mesma que a fonte do menu do aplicativo.

void EnableMenuFont(
    BOOL bOn=TRUE,
    BOOL bRedraw=TRUE);

Parâmetros

bOn
[in] TRUE usar a fonte do menu do aplicativo como a fonte de texto do botão; FALSE usar a fonte do sistema. O padrão é TRUE.

bRedraw
[em] TRUE redesenhar imediatamente a tela; 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, você pode 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 usar o tema atual do Windows para desenhar bordas de botões; FALSE não usar o tema do Windows. O padrão é TRUE.

Comentários

Esse método afeta todos os botões em seu 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 tem estilo BS_AUTOCHECKBOX ou BS_AUTORADIOBUTTON; caso contrário, FALSE.

CMFCButton::IsAutorepeatCommandMode

Indica se um botão está definido para o modo de repetição automática.

BOOL IsAutorepeatCommandMode() const;

Valor de retorno

TRUE se o botão estiver definido para o modo de repetição automática; caso contrário, FALSE.

Comentários

Use o método CMFCButton::SetAutorepeatMode para definir um botão para o 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 tem 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 atual estiver marcado; caso contrário, FALSE.

Comentários

A estrutura usa diferentes maneiras de indicar que diferentes tipos de botões estão marcados. Por exemplo, um botão de opção é verificado 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 fica realçado quando o mouse passa sobre o botão.

CMFCButton::IsPressed

Indica se um botão é pressionado e realçado.

BOOL IsPressed() const;

Valor de retorno

TRUE se o botão for pressionado; caso contrário, FALSE.

CMFCButton::IsPushed

Indica se um botão é pressionado.

BOOL IsPushed() const;

Valor de retorno

TRUE se o botão for 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 é 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 corresponde 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 foco.

O construtor CMFCButton inicializa esse membro para TRUE.

CMFCButton::m_bGrayDisabled

Quando TRUE, permite que um botão desativado seja desenhado como acinzentado.

BOOL m_bGrayDisabled;

CMFCButton::m_bHighlightChecked

Indica se um botão estilo BS_CHECKBOX deve ser realçado quando o cursor passa sobre ele.

BOOL m_bHighlightChecked;

Comentários

Defina o membro m_bHighlightChecked como TRUE para especificar que a estrutura destacará um botão estilo BS_CHECKBOXquando o mouse passar sobre ele.

CMFCButton::m_bResponseOnButtonDown

Indica se os eventos de botão para baixo devem ser respondidos.

BOOL m_bResponseOnButtonDown;

CMFCButton::m_bRightImage

Indica se uma imagem deve ser exibida 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 FALSE.

CMFCButton::m_nAlignStyle

Especifica o alinhamento do texto do botão.

AlignStyle m_nAlignStyle;

Comentários

Use um dos seguintes valores de enumeração CMFCButton::AlignStyle 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 ALIGN_CENTER.

CMFCButton::m_bWasDblClk

Indica se o evento do último clique foi um clique duplo.

BOOL m_bWasDblClk;

CMFCButton::m_nFlatStyle

Especifica o estilo do botão, como sem bordas, plano, semiplano ou 3D.

FlatStyle m_nFlatStyle;

Comentários

A tabela a seguir lista os CMFCButton::m_nFlatStyle valores de enumeração que especificam a aparência de um botão.

Valor Descrição
BUTTONSTYLE_3D (Padrão) O botão parece ter lados altos e tridimensionais. Quando o botão é clicado, o botão parece ser pressionado em um recuo profundo.
BUTTONSTYLE_FLAT Quando o mouse não pausa sobre o botão, o botão parece ser bidimensional e não tem lados elevados. Quando o mouse faz uma pausa sobre o botão, o botão parece ter lados baixos e tridimensionais. Quando o botão é clicado, o botão parece ser pressionado em um recuo raso.
BUTTONSTYLE_SEMIFLAT O botão parece ter lados baixos e tridimensionais. Quando o botão é clicado, o botão parece ser pressionado em um recuo profundo.
BUTTONSTYLE_NOBORDERS O botão não tem lados elevados e aparece sempre bidimensional. O botão não parece ser pressionado em um recuo quando é clicado.

O construtor CMFCButton inicializa esse membro para BUTTONSTYLE_3D.

Exemplo

O exemplo a seguir demonstra como definir os valores da variável membro m_nFlatStyle na classe CMFCButton. Este exemplo faz parte do exemplo New Controls.

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
[em] Um ponteiro para um contexto de dispositivo.

rect
[em] Uma referência a um retângulo que limita o botão.

uiState
[em] O estado atual do botão. Para obter mais informações, consulte o itemState membro do tópico DRAWITEMSTRUCT Structure.

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
[em] Um ponteiro para um contexto de dispositivo.

rectClient
[em] Uma referência a um retângulo que limita o botão.

uiState
[em] O estado atual do botão. Para obter mais informações, consulte o itemState membro do tópico DRAWITEMSTRUCT Structure.

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 para um botão.

virtual void OnDrawFocusRect(
    CDC* pDC,
    const CRect& rectClient);

Parâmetros

pDC
[em] Um ponteiro para um contexto de dispositivo.

rectClient
[em] Uma referência a um retângulo que limita 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
[em] Um ponteiro para um contexto de dispositivo.

rect
[em] Uma referência a um retângulo que limita o botão.

strText
[em] O texto a desenhar.

uiDTFlags
[em] Sinalizadores que especificam como formatar o texto. Para obter mais informações, consulte o parâmetro nFormat do método CDC::DrawText.

uiState
[em] 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 plano de fundo do texto do botão.

virtual void OnFillBackground(
    CDC* pDC,
    const CRect& rectClient);

Parâmetros

pDC
[em] Um ponteiro para um contexto de dispositivo.

rectClient
[em] Uma referência a um retângulo que limita o botão.

Comentários

Substitua esse método para usar seu próprio código para desenhar o plano 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
[em] 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 para o modo de repetição automática.

void SetAutorepeatMode(int nTimeDelay=500);

Parâmetros

nTimeDelay
[em] Um número não negativo que especifica o intervalo entre as mensagens que são enviadas para a janela pai. O intervalo é medido em milissegundos e seu valor padrão é 500 milissegundos. Especifique zero para desativar o modo de mensagem de repetição automática.

Comentários

Esse método faz com que o botão envie constantemente mensagens WM_COMMAND para a janela pai até que o botão seja liberado ou o parâmetro nTimeDelay seja definido como zero.

CMFCButton::SetCheckedImage

Define a imagem para 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
[em] Manipule o í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
[em] Manipule o ícone que contém a imagem para o estado selecionado.

hBitmap
[em] Manipule o bitmap que contém a imagem para o estado não selecionado.

hBitmapHot
[em] Manipule o bitmap que contém a imagem para o estado selecionado.

bMap3dColors
[em] Especifica uma cor transparente para o plano de fundo do botão; ou seja, a cara do botão. TRUE usar o valor de cor RGB(192, 192, 192); FALSE usar o valor de cor definido por AFX_GLOBAL_DATA::clrBtnFace.

uiBmpResId
[em] ID do recurso para a imagem não selecionada.

uiBmpHotResId
[em] ID do recurso para a imagem selecionada.

hIconDisabled
[em] Manipule o ícone da imagem desativada.

hBitmapDisabled
[em] Manipule o bitmap que contém a imagem desabilitada.

uiBmpDsblResID
[em] ID do recurso do bitmap desabilitado.

bAlphaBlend
[em] TRUE usar apenas imagens de 32 bits que usam o canal alfa; FALSE, para não usar apenas imagens de canal alfa. O padrão é FALSE.

CMFCButton::SetFaceColor

Define a cor do plano de fundo para o texto do botão.

void SetFaceColor(
    COLORREF crFace,
    BOOL bRedraw=TRUE);

Parâmetros

crFace
[em] Um valor de cor RGB.

bRedraw
[em] TRUE redesenhar a tela imediatamente; caso contrário, FALSE.

Comentários

Use esse método para definir uma nova cor de preenchimento para o plano de fundo do botão (face). Observe que o plano de fundo não é preenchido 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
[em] Manipule o í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
[em] Manipule o ícone que contém a imagem para o estado selecionado.

hBitmap
[em] Manipule o bitmap que contém a imagem para o estado não selecionado.

hBitmapHot
[em] Manipule o bitmap que contém a imagem para o estado selecionado.

uiBmpResId
[em] ID do recurso para a imagem não selecionada.

uiBmpHotResId
[em] ID do recurso para a imagem selecionada.

bMap3dColors
[em] Especifica uma cor transparente para o plano de fundo do botão; ou seja, a cara do botão. TRUE usar o valor de cor RGB(192, 192, 192); FALSE usar o valor de cor definido por AFX_GLOBAL_DATA::clrBtnFace.

hIconDisabled
[em] Manipule o ícone da imagem desativada.

hBitmapDisabled
[em] Manipule o bitmap que contém a imagem desabilitada.

uiBmpDsblResID
[em] ID do recurso do bitmap desabilitado.

bAlphaBlend
[em] TRUE usar apenas imagens de 32 bits que usam o canal alfa; FALSE, para não usar apenas imagens de 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. O exemplo faz parte do exemplo New Controls.

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
[em] A alça de um cursor.

Comentários

Use esse método para associar uma imagem do cursor, como o cursor da mão, ao botão. O cursor é carregado a partir dos recursos do aplicativo.

Exemplo

O exemplo a seguir demonstra como usar o método SetMouseCursor na classe CMFCButton. O exemplo faz parte do código no New Controls.

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 para 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
[em] Um dos identificadores de imagem de botão que é definido na enumeração CMenuImage::IMAGES_IDS. Os valores de imagem especificam imagens como setas, pinos e botões de opção.

state
[em] Um dos identificadores de estado de imagem de botão que é definido na enumeração CMenuImages::IMAGE_STATE. Os estados da imagem especificam cores de botão como preto, cinza, cinza claro, branco e cinza escuro. O valor padrão é CMenuImages::ImageBlack.

idDisabled
[em] Um dos identificadores de imagem de botão que é definido na enumeração CMenuImage::IMAGES_IDS. A imagem indica que o botão está desativado. O valor padrão é a primeira imagem do botão (CMenuImages::IdArrowDown).

CMFCButton::SetTextColor

Define a cor do texto do botão para um botão que não está selecionado.

void SetTextColor(COLORREF clrText);

Parâmetros

clrText
[em] Um valor de cor RGB.

CMFCButton::SetTextHotColor

Define a cor do texto do botão para um botão selecionado.

void SetTextHotColor(COLORREF clrTextHot);

Parâmetros

clrTextHot
[em] Um valor de cor RGB.

CMFCButton::SetTooltip

Associa uma dica de ferramenta a um botão.

void SetTooltip(LPCTSTR lpszToolTipText);

Parâmetros

lpszToolTipText
[em] Ponteiro para o texto da dica de ferramenta. Especifique NULL para desativar 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
[em] TRUE calcular, mas não alterar, o novo tamanho do botão; FALSE 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.

Ver também

Gráfico de Hierarquia
Aulas
CMFCLinkCtrl Classe
CMFCColorButton Classe
CMFCMenuButton Classe