Compartilhar via


Controle de cabeçalho

Esta seção contém informações sobre os elementos de programação usados com controles de cabeçalho.

Súmulas

Tópico Conteúdo
sobre controles de cabeçalho Um controle de cabeçalho é uma janela que geralmente é posicionada acima de colunas de texto ou números. Ele contém um título para cada coluna e pode ser dividido em partes.
usando controles de cabeçalho Este tópico fornece detalhes de implementação e exemplos de código para controles de cabeçalho.

Macros

Tópico Conteúdo
Header_ClearAllFilters Limpa todos os filtros para um determinado controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_CLEARFILTER explicitamente.
Header_ClearFilter Limpa o filtro de um determinado controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_CLEARFILTER explicitamente.
Header_CreateDragImage Cria uma versão transparente de uma imagem de item dentro de um controle de cabeçalho existente. Você pode usar essa macro ou enviar a mensagem HDM_CREATEDRAGIMAGE explicitamente.
Header_DeleteItem Exclui um item de um controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_DELETEITEM explicitamente.
Header_EditFilter Move o foco de entrada para a caixa de edição quando um botão de filtro tem o foco.
Header_GetBitmapMargin Obtém a largura da margem (em pixels) de um bitmap em um controle de cabeçalho existente. Você pode usar essa macro ou enviar a mensagem HDM_GETBITMAPMARGIN explicitamente.
Header_GetFocusedItem Obtém o item em um controle de cabeçalho que tem o foco. Use essa macro ou envie a mensagem HDM_GETFOCUSEDITEM explicitamente.
Header_GetImageList Obtém o identificador para a lista de imagens que foi definida para um controle de cabeçalho existente. Você pode usar essa macro ou enviar a mensagem HDM_GETIMAGELIST explicitamente.
Header_GetItem Obtém informações sobre um item em um controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_GETITEM explicitamente.
Header_GetItemCount Obtém uma contagem dos itens em um controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_GETITEMCOUNT explicitamente.
Header_GetItemDropDownRect Obtém as coordenadas do botão suspenso para um item especificado em um controle de cabeçalho. O controle de cabeçalho deve ser do tipo HDF_SPLITBUTTON. Use essa macro ou envie a mensagem HDM_GETITEMDROPDOWNRECT explicitamente.
Header_GetItemRect Obtém o retângulo delimitador para um determinado item em um controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_GETITEMRECT explicitamente.
Header_GetOrderArray Obtém a ordem atual da esquerda para a direita dos itens em um controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_GETORDERARRAY explicitamente.
Header_GetOverflowRect Obtém as coordenadas da área de estouro suspensa para um controle de cabeçalho especificado. O controle de cabeçalho deve ser do tipo HDF_SPLITBUTTON. Use essa macro ou envie a mensagem HDM_GETOVERFLOWRECT explicitamente.
Header_GetStateImageList Obtém o identificador para a lista de imagens que foi definida para um estado de controle de cabeçalho existente.
Header_GetUnicodeFormat Obtém o sinalizador de formato de caractere Unicode para o controle. Você pode usar essa macro ou enviar a mensagem HDM_GETUNICODEFORMAT explicitamente.
Header_InsertItem Insere um novo item em um controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_INSERTITEM explicitamente.
Header_Layout Recupera o tamanho e a posição corretos de um controle de cabeçalho dentro da janela pai. Você pode usar essa macro ou enviar a mensagem HDM_LAYOUT explicitamente.
Header_OrderToIndex Recupera um valor de índice para um item com base em sua ordem no controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_ORDERTOINDEX explicitamente.
Header_SetBitmapMargin Define a largura da margem para um bitmap em um controle de cabeçalho existente. Você pode usar essa macro ou enviar a mensagem HDM_SETBITMAPMARGIN explicitamente.
Header_SetFilterChangeTimeout Define o intervalo de tempo limite entre o tempo em que uma alteração ocorre nos atributos de filtro e a postagem de uma notificação HDN_FILTERCHANGE. Você pode usar essa macro ou enviar a mensagem HDM_SETFILTERCHANGETIMEOUT explicitamente.
Header_SetFocusedItem Define o foco para um item especificado em um controle de cabeçalho. Use essa macro ou envie a mensagem HDM_SETFOCUSEDITEM explicitamente.
Header_SetHotDivider Altera a cor de um divisor entre itens de cabeçalho para indicar o destino de uma operação de arrastar e soltar externa. Você pode usar essa macro ou enviar a mensagem HDM_SETHOTDIVIDER explicitamente.
Header_SetImageList Atribui uma lista de imagens a um controle de cabeçalho existente. Você pode usar essa macro ou enviar a mensagem HDM_SETIMAGELIST explicitamente.
Header_SetItem Define os atributos do item especificado em um controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_SETITEM explicitamente.
Header_SetOrderArray Define a ordem da esquerda para a direita dos itens de cabeçalho. Você pode usar essa macro ou enviar a mensagem HDM_SETORDERARRAY explicitamente.
Header_SetStateImageList Atribui uma lista de imagens a um estado de controle de cabeçalho existente.
Header_SetUnicodeFormat Define o sinalizador de formato de caractere UNICODE para o controle. Essa mensagem permite que você altere o conjunto de caracteres usado pelo controle em tempo de execução, em vez de precisar recriar o controle. Você pode usar essa macro ou enviar a mensagem HDM_SETUNICODEFORMAT explicitamente.

Mensagens

Tópico Conteúdo
HDM_CLEARFILTER Limpa o filtro de um determinado controle de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_ClearFilter.
HDM_CREATEDRAGIMAGE Cria uma versão semitransparente da imagem de um item para uso como uma imagem de arrastar. Você pode enviar essa mensagem explicitamente ou usar a macro Header_CreateDragImage.
HDM_DELETEITEM Exclui um item de um controle de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_DeleteItem.
HDM_EDITFILTER Move o foco de entrada para a caixa de edição quando um botão de filtro tem o foco.
HDM_GETBITMAPMARGIN Obtém a largura da margem de bitmap para um controle de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_GetBitmapMargin.
HDM_GETFOCUSEDITEM Obtém o item em um controle de cabeçalho que tem o foco. Envie esta mensagem explicitamente ou usando a macro Header_GetFocusedItem. Uma janela recebe essa mensagem por meio de sua funçãoWindowProc.
HDM_GETIMAGELIST Obtém o identificador para a lista de imagens que foi definida para um controle de cabeçalho existente. Você pode enviar essa mensagem explicitamente ou usar a macro Header_GetImageList ou Header_GetStateImageList.
HDM_GETITEM Obtém informações sobre um item em um controle de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_GetItem.
HDM_GETITEMCOUNT Obtém uma contagem dos itens em um controle de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_GetItemCount.
HDM_GETITEMDROPDOWNRECT Obtém o retângulo delimitador do botão de divisão de um item de cabeçalho com estilo HDF_SPLITBUTTON. Envie essa mensagem explicitamente ou usando a macroHeader_GetItemDropDownRect.
HDM_GETITEMRECT Obtém o retângulo delimitador para um determinado item em um controle de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_GetItemRect.
HDM_GETORDERARRAY Obtém a ordem atual da esquerda para a direita dos itens em um controle de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_GetOrderArray.
HDM_GETOVERFLOWRECT Obtém o retângulo delimitador do botão de estouro quando o estilo HDS_OVERFLOW é definido no controle de cabeçalho e o botão de estouro fica visível. Envie essa mensagem explicitamente ou usando a macroHeader_GetOverflowRect.
HDM_GETUNICODEFORMAT Obtém o sinalizador de formato de caractere Unicode para o controle. Você pode enviar essa mensagem explicitamente ou usar a macro Header_GetUnicodeFormat.
HDM_HITTEST Testa um ponto para determinar qual item de cabeçalho, se houver, está no ponto especificado.
HDM_INSERTITEM Insere um novo item em um controle de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_InsertItem.
HDM_LAYOUT Recupera informações usadas para definir o tamanho e a posição do controle de cabeçalho dentro do retângulo de destino da janela pai. Você pode enviar essa mensagem explicitamente ou usar a macro Header_Layout.
HDM_ORDERTOINDEX Recupera um valor de índice para um item com base em sua ordem no controle de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_OrderToIndex.
HDM_SETBITMAPMARGIN Define a largura da margem, especificada em pixels, de um bitmap em um controle de cabeçalho existente. Você pode enviar essa mensagem explicitamente ou usar a macro Header_SetBitmapMargin.
HDM_SETFILTERCHANGETIMEOUT Define o intervalo de tempo limite entre o tempo em que uma alteração ocorre nos atributos de filtro e a postagem de uma notificação HDN_FILTERCHANGE. Você pode enviar essa mensagem explicitamente ou usar a macro Header_SetFilterChangeTimeout.
HDM_SETFOCUSEDITEM Define o foco para um item especificado em um controle de cabeçalho. Envie essa mensagem explicitamente ou usando a macro Header_SetFocusedItem.
HDM_SETHOTDIVIDER Altera a cor de um divisor entre itens de cabeçalho para indicar o destino de uma operação de arrastar e soltar externa. Você pode enviar essa mensagem explicitamente ou usar a macro Header_SetHotDivider.
HDM_SETIMAGELIST Atribui uma lista de imagens a um controle de cabeçalho existente. Você pode enviar essa mensagem explicitamente ou usar a macro Header_SetImageList ou Header_SetStateImageList.
HDM_SETITEM Define os atributos do item especificado em um controle de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_SetItem.
HDM_SETORDERARRAY Define a ordem da esquerda para a direita dos itens de cabeçalho. Você pode enviar essa mensagem explicitamente ou usar a macro Header_SetOrderArray.
HDM_SETUNICODEFORMAT Define o sinalizador de formato de caractere UNICODE para o controle. Essa mensagem permite que você altere o conjunto de caracteres usado pelo controle em tempo de execução, em vez de precisar recriar o controle. Você pode enviar essa mensagem explicitamente ou usar a macro Header_SetUnicodeFormat.
HDM_TRANSLATEACCELERATOR Não implementado.

Notificações

Tópico Conteúdo
HDN_BEGINDRAG Enviado por um controle de cabeçalho quando uma operação de arrastar é iniciada em um de seus itens. Esse código de notificação é enviado somente por controles de cabeçalho definidos para o estilo HDS_DRAGDROP. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_BEGINFILTEREDIT Notifica a janela pai de um controle de cabeçalho que uma edição de filtro foi iniciada. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_BEGINTRACK Notifica a janela pai de um controle de cabeçalho de que o usuário começou a arrastar um divisor no controle (ou seja, o usuário pressionou o botão esquerdo do mouse enquanto o cursor do mouse está em um divisor no controle de cabeçalho). Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_DIVIDERDBLCLICK Notifica a janela pai de um controle de cabeçalho de que o usuário clicou duas vezes na área do divisor do controle. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_DROPDOWN Enviado por um controle de cabeçalho para seu pai quando a seta suspensa no controle de cabeçalho é clicada. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_ENDDRAG Enviado por um controle de cabeçalho quando uma operação de arrastar terminou em um de seus itens. Esse código de notificação é enviado como uma mensagem de WM_NOTIFY. Somente os controles de cabeçalho definidos para o estilo HDS_DRAGDROP enviam essa notificação.
HDN_ENDFILTEREDIT Notifica a janela pai de um controle de cabeçalho que uma edição de filtro terminou. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_ENDTRACK Notifica a janela pai de um controle de cabeçalho de que o usuário terminou de arrastar um divisor. Este código de notificação enviado na forma de uma mensagem de WM_NOTIFY.
HDN_FILTERBTNCLICK Notifica a janela pai do controle de cabeçalho quando o botão de filtro é clicado ou em resposta a uma mensagem HDM_SETITEM.
HDN_FILTERCHANGE Notifica a janela pai do controle de cabeçalho de que os atributos de um filtro de controle de cabeçalho estão sendo alterados ou editados.
HDN_GETDISPINFO Enviado ao proprietário de um controle de cabeçalho quando o controle precisa de informações sobre um item de cabeçalho de retorno de chamada. Esse código de notificação é enviado como uma mensagem de WM_NOTIFY.
HDN_ITEMCHANGED Notifica a janela pai de um controle de cabeçalho de que os atributos de um item de cabeçalho foram alterados. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_ITEMCHANGING Notifica a janela pai de um controle de cabeçalho de que os atributos de um item de cabeçalho estão prestes a ser alterados. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_ITEMCLICK Notifica a janela pai de um controle de cabeçalho que o usuário clicou no controle. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_ITEMDBLCLICK Notifica a janela pai de um controle de cabeçalho de que o usuário clicou duas vezes no controle. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY. Somente os controles de cabeçalho definidos para o estilo HDS_BUTTONS enviam essa notificação.
HDN_ITEMKEYDOWN Notifica a janela pai de um controle de cabeçalho de que uma tecla foi pressionada com um item selecionado. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_ITEMSTATEICONCLICK Notifica a janela pai de um controle de cabeçalho de que o usuário clicou no ícone de estado de um item.
HDN_OVERFLOWCLICK Enviado por um controle de cabeçalho para seu pai quando o botão de estouro do cabeçalho é clicado. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
HDN_TRACK Notifica a janela pai de um controle de cabeçalho de que o usuário está arrastando um divisor no controle de cabeçalho. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
NM_CUSTOMDRAW (cabeçalho) Enviado por um controle de cabeçalho para notificar sua janela pai sobre operações de desenho. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
NM_RCLICK (cabeçalho) Notifica a janela pai de um controle de exibição de árvore que o usuário clicou no botão direito do mouse dentro do controle. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.
NM_RELEASEDCAPTURE (cabeçalho) Notifica a janela pai de um controle de cabeçalho de que o controle está liberando a captura do mouse. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY.

Constantes

Tópico Conteúdo
estilos de controle de cabeçalho Os controles de cabeçalho têm vários estilos, descritos nesta seção, que determinam a aparência e o comportamento do controle. Você define os estilos iniciais ao criar o controle de cabeçalho.