CBitmapButton

Use o CBitmapButton classe para criar controles botão rotulados com imagens de bitmap em vez de texto. Objetos de CBitmapButton contêm até quatro bitmaps, que contêm imagens para os diferentes Estados de um botão pode assumir: cima (ou normal), para baixo (ou selecionado), focalizado e desativado. Somente o primeiro bitmap é necessário; os outros são opcionais.

Imagens de botão de bitmap incluem a borda ao redor da imagem, bem como a própria imagem. A borda normalmente desempenha um papel em mostrar o estado do botão. Por exemplo, o bitmap para o estado foco normalmente é como o que é para o estado de backup, mas com um baixo-relevo retângulo tracejado de borda ou uma linha sólida espessa na fronteira. O bitmap para o desativado estado geralmente semelhante a um para o estado de backup, mas tem menor contraste (como uma seleção de menu esmaecido ou sombreado).

Esses bitmaps pode ser de qualquer tamanho, mas todos são tratados como se fossem do mesmo tamanho que o bitmap para o estado de backup.

Vários aplicativos exigem combinações diferentes de imagens de bitmap:

Até Para baixo Focada Com deficiência Aplicação
× Bitmap
× × Botão sem estilo WS_TABSTOP
× × × × Botão de caixa de diálogo com todos os Estados
× × × Botão de caixa de diálogo com WS_TABSTOP estilo

Ao criar um Controlarar de botão de bitmap, defina o estilo BS_OW&NERDRAW para especificar que o botão é proprietário-drawn.nbsp; Isso faz com que o Windows para enviar as mensagens WM_MEASUREITEM e WM_DRAWITEM para o botão; a estrutura lida com essas mensagens e gerencia a aparência do botão para você.

Para criar um Controlarar de botão de bitmap na área de cliente da janela, siga estes passos:

  1. Criar imagens de bitmap de um a quatro para o botão.

  2. Construir o objeto de CBitmapButton.

  3. Chamar a função de criar para criar o Controlarar de botão do Windows e anexá-lo para o objeto de CBitmapButton.

  4. Chame a função de membro LoadBitmaps para carregar os recursos de bitmap após o botão de bitmap é construído.

Para incluir um Controlarar de botão de bitmap em uma caixa de diálogo, siga estas etapas:

  1. Criar imagens de bitmap de um a quatro para o botão.

  2. Crie um modelo de diálogo com um botão proprietário-desenhar posicionado onde você deseja que o botão de bitmap. Não importa o tamanho do botão no modelo.

  3. Definir a legenda do botão para um valor, como "MYIMAGE" e define um símbolo para o botão, como IDC_MYIMAGE.

  4. No script de recurso do seu aplicativo, dar a cada uma das imagens criadas para o botão uma identificação construída, acrescentando uma das cartas "U", "D," "F" ou "X" (para cima, para baixo, focada e desativado) para a Cadeia de caracteres usada para a legenda do botão no passo 3. Para a legenda do botão "MYIMAGE", por exemplo, os IDs seria "MYIMAGEU," "MYIMAGED", "MYIMAGEF," e "MYIMAGEX." Você deve especificar o ID de seu bitmaps dentro de aspas duplas. Caso contrário, o editor de recursos atribuirá um número inteiro para o recurso e MFC falharão ao Carregando a imagem.

  5. Na classe de caixa de diálogo do seu aplicativo (derivada de CDialog), adicionar um objeto de membro CBitmapButton.

  6. Na rotina de OnInitDialog do objeto CDialog , chamada AutoLoad função do objeto CBitmapButton , usando como parâmetros de ID de Controlarar do botão e esse ponteiro do objeto CDialog.

Se você deseja manipular mensagens de notificação do Windows, tais como BN_CLICKED, enviada por um controle de botão de bitmap para seu pai (geralmente uma classe derivada de CDialog), adicionar ao CDialog-derivado objeto um mapa da mensagem entrada e manipulador de mensagens função de membro para cada mensagem. As notificações enviadas por um objeto CBitmapButton são as mesmas enviada por um objeto de CButton.

A classe CToolBar adota uma abordagem diferente para botões de bitmap.

Para obter mais informações sobre CBitmapButton, consulte Controle tópicos no Guia do programador do Visual C++.

# include lt;afxext.h>

Membros da classe |nbsp; Classe base | Gráfico de hierarquia

Amostra  Exemplo do MFC CTRLTEST

Index