Aracılığıyla paylaş


CPagerCtrl::RecalcSize

İçerilen penceresinin boyutunu hesaplamak geçerli çağrı denetimi neden olur.

void RecalcSize();

Gereksinimler

Başlık: afxcmn.h

Notlar

Bu yöntem gönderir PGM_RECALCSIZE 'de açıklanan iletiyi Windows SDK.Sonuç olarak, çağrı denetimi gönderir PGN_CALCSIZE içerdiği pencerenin kaydırılabilir boyutlarını edinmek için bildirim.

Örnek

Aşağıdaki örnek CPagerCtrl::RecalcSize boyutuna yeniden hesaplamak için geçerli çağrı Denetim istemek için yöntem.

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."));
}

Aşağıdaki örnek ileti yansıtma hesaplama yapmak için denetimin üst iletişim istemek yerine, kendi boyutu yeniden hesaplamak çağrı denetimi etkinleştirmek için.Örnek türeyen MyPagerCtrl karşı sınıf CPagerCtrl sınıfı, daha sonra ilişkilendirmek için bir ileti eşleme kullanır PGN_CALCSIZE bildirimi ile OnCalcsize bildirim işleyicisi.Bu örnekte, bildirim işleyicisi genişlik ve Yükseklik çağrı denetim sabit değerleri ayarlar.

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;
}

Ayrıca bkz.

Başvuru

CPagerCtrl sınıfı

Hiyerarşi grafik

PGM_RECALCSIZE

PGN_CALCSIZE