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.

Visões gerais

Tópico Contents
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 Contents
Header_ClearAllFilters Limpa todos os filtros de um determinado controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem de HDM_CLEARFILTER explicitamente.
Header_ClearFilter Limpa o filtro de um determinado controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem de 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 de 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 de 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 de HDM_GETFOCUSEDITEM explicitamente.
Header_GetImageList Obtém o identificador para a lista de imagens que foi definido para um controle de cabeçalho existente. Você pode usar essa macro ou enviar a mensagem de 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 de 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 de 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 de 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 de 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 de 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 de HDM_GETUNICODEFORMAT explicitamente.
Header_InsertItem Insere um novo item em um controle de cabeçalho. Você pode usar essa macro ou enviar a mensagem de 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 de 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 de HDM_ORDERTOINDEX explicitamente.
Header_SetBitmapMargin Define a largura da margem de um bitmap em um controle de cabeçalho existente. Você pode usar essa macro ou enviar a mensagem de 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 de 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 externa de arrastar e soltar. Você pode usar essa macro ou enviar a mensagem de 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 de 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 ter que recriar o controle. Você pode usar essa macro ou enviar a mensagem de HDM_SETUNICODEFORMAT explicitamente.

Mensagens

Tópico Contents
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 arrastamento. 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 da sua função WindowProc.
HDM_GETIMAGELIST Obtém o identificador para a lista de imagens que foi definido 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 para um item de cabeçalho com estilo HDF_SPLITBUTTON. Envie essa mensagem explicitamente ou usando a macro Header_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 de HDS_OVERFLOW é definido no controle de cabeçalho e o botão de estouro está visível. Envie essa mensagem explicitamente ou usando a macro Header_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 externa de arrastar e soltar. 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 ter que recriar o controle. Você pode enviar essa mensagem explicitamente ou usar a macro Header_SetUnicodeFormat.
HDM_TRANSLATEACCELERATOR Não implementado.

Notifications

Tópico Contents
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 de 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 que o usuário clicou duas vezes na área divisória 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 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 de 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 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 mudar. 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 de 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 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 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 em árvore de 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 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 Contents
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.