Partilhar via


CPagerCtrl::RecalcSize

Faz com que o corrente pager controle para recalcular o dimensionar da janela contido.

void RecalcSize();

Requisitos

Cabeçalho: afxcmn.h

Comentários

Esse método envia o PGM_RECALCSIZE mensagem, que é descrita no Windows SDK. Conseqüentemente, o pager controle envia o PGN_CALCSIZE notificação para obter as roláveis dimensões da janela contida.

Exemplo

O exemplo a seguir utiliza o CPagerCtrl::RecalcSize método para solicitar a corrente pager controle para recalcular a seu dimensionar.

void CCSplitButton_s2Dlg::OnXRecalcsize()
{
    // If the child control changes size, call RecalcSize() to change
    // the size of the pager control accordingly.
    m_pager.RecalcSize(); 
    MessageBox(_T("The pager control size has been recalculated."));
}

O exemplo a seguir utiliza mensagem de reflexão para habilitar o pager controle para recalcular o seu próprio dimensionar, em vez de exigir que a caixa de diálogo do controle pai para executar o cálculo.O exemplo deriva o MyPagerCtrl classe das Classe CPagerCtrl, em seguida, usa um MAP da mensagem para associar o PGN_CALCSIZE notificação com o OnCalcsize manipulador de notificação. Neste exemplo, o manipulador de notificação define a largura e altura do controle de paginação para valores fixos.

BEGIN_MESSAGE_MAP(CMyPagerCtrl, CPagerCtrl)
        ON_NOTIFY_REFLECT(PGN_CALCSIZE, &CMyPagerCtrl::OnCalcSize)
END_MESSAGE_MAP()

// CMyPagerCtrl message handlers
void CMyPagerCtrl::OnCalcSize(NMHDR* code, LRESULT* param)
{
// If the control contained in the pager control changes size, use this
// handler to change the size of the pager control accordingly.

        LPNMPGCALCSIZE tmp = (LPNMPGCALCSIZE)code;
        *param = 0;
        tmp->iWidth = 500;
        tmp->iHeight = 50;
}

Consulte também

Referência

Classe CPagerCtrl

Gráfico de hierarquia

PGM_RECALCSIZE

PGN_CALCSIZE

Outros recursos

CPagerCtrl membros