MFC - Botão Bitmap

UMA bitmap buttonexibe uma imagem ou uma imagem e texto em seu rosto. Geralmente, a intenção é tornar o botão um pouco explícito. Um botão de bitmap é criado usando oCBitmapButton class, que é derivado de CButton.

Aqui está a lista de métodos da classe CBitmapButton.

Sr. Não. Nome e Descrição
1

AutoLoad

Associa um botão em uma caixa de diálogo a um objeto da classe CBitmapButton, carrega o (s) bitmap (s) por nome e dimensiona o botão para caber no bitmap.

2

LoadBitmaps

Inicializa o objeto carregando um ou mais recursos de bitmap nomeados do arquivo de recursos do aplicativo e anexando os bitmaps ao objeto.

3

SizeToContent

Ele redimensiona o botão para o tamanho dos bitmaps.

Aqui está a lista de mapeamento de mensagens para controle de botão de bitmap -

mensagem Entrada do mapa Descrição
BN_CLICKED ON_BN_CLICKED (<id>, <memberFxn>) A estrutura chama essa função de membro quando o botão é clicado.
BN_DISABLE ON_BN_DISABLE (<id>, <memberFxn>) A estrutura chama essa função de membro quando o botão está desabilitado.
BN_DOUBLECLICKED ON_BN_DOUBLECLICKED (<id>, <memberFxn>) A estrutura chama essa função de membro quando o botão é clicado duas vezes.
BN_PAINT ON_BN_PAINT (<id>, <memberFxn>) A estrutura chama essa função de membro quando um aplicativo faz uma solicitação para redesenhar um botão.

Vejamos um exemplo simples criando um novo projeto.

Step 1 - Adicionar um bitmap na caixa de diálogo Adicionar recurso.

Step 2 - Selecione Bitmap e clique em Novo.

Step 3 - Projete seu bitmap e altere sua ID para IDB_BITMAP_START conforme mostrado acima.

Step 4 - Adicione um botão à sua caixa de diálogo e também adicione uma Variável de controle m_buttonStart para esse botão.

Step 5- Adicione uma variável de bitmap em seu arquivo de cabeçalho. Agora você pode ver as duas variáveis ​​a seguir.

CBitmap m_bitmapStart;
CButton m_buttonStart;

Step 6 - Modifique seu método OnInitDialog () conforme mostrado no código a seguir.

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

Step 7 - Quando o código acima for compilado e executado, você verá a seguinte saída.