Partilhar via


CHeaderCtrl::GetOverflowRect

Obtém o retângulo delimitador do botão de estouro de controle de cabeçalho atual.

BOOL GetOverflowRect(
     LPRECT lpRect
) const;

Parâmetros

Parâmetro

Descrição

[out] lpRect

Ponteiro a estrutura de RECT que recebe informações do retângulo delimitador.

Valor de retorno

true se essa função é com êxito; caso contrário, false.

Comentários

Se o controle de cabeçalho contém mais itens do que pode ser exibido simultaneamente, o controle pode exibir um botão de excedentes que rola para itens que não são visíveis.O controle cabeçalho deve ter os estilos de HDS_OVERFLOW e de HDF_SPLITBUTTON para exibir o botão de excedentes.O retângulo delimitador inclui o botão de excedentes e existe somente quando o botão de excedentes é exibido.Para mais informações, consulte Header Control Styles.

Este método envia a mensagem de HDM_GETOVERFLOWRECT , que é descrita em Windows SDK.

Requisitos

Cabeçalho: afxcmn.h

Esse controle é suportado em Windows Vista e posteriormente.

Os requisitos adicionais para o método são descritos em Criar requisitos de controles comuns do Windows Vista.

Exemplo

O exemplo de código a seguir define a variável, m_headerCtrl, que é usada para acessar o controle de cabeçalho atual.Esta variável é usado no exemplo a seguir.

    CHeaderCtrl m_headerCtrl;
    CSplitButton m_splitButton;

O exemplo de código demonstra o método de GetOverflowRect .Em uma seção anterior de código, nós criaremos um controle de cabeçalho com as cinco colunas.Em o entanto, você pode arrastar um separador de coluna para que a coluna não está visível.Se algumas colunas não são visíveis, o controle de cabeçalho desenha um botão de excedentes.O exemplo de código a seguir desenha um retângulo 3D em torno do local do botão excedentes.

void CNVC_MFC_CHeaderCtrl_s4Dlg::OnXGetoverflowrect()
{
    if (controlCreated == FALSE) {
        MessageBox(_T("Header control has not been created yet."));
        return;
    }
    CRect rect;
    // Get the overflow rectangle.
    BOOL bRetVal = m_headerCtrl.GetOverflowRect(&rect);
    // Get the device context.
    CDC* pDC = m_headerCtrl.GetDC();
    // Draw around the overflow rect a rectangle that has red 
    // left and top sides, and green right and bottom sides.
    pDC->Draw3dRect(rect, RGB(255, 0, 0), RGB(0, 255, 0));
}

Consulte também

Referência

Classe de CHeaderCtrl

Gráfico de hierarquia

HDM_GETOVERFLOWRECT

RECT