void SetScrollSizes ( int nMapMode, boyut sizeTotal, const SIZEamp; sizePage = sizeDefault, const Boyutu & sizeLine = sizeDefault );
Parametreleri
nMapMode
Bu görünüm için ayarlamak için eşleştirme modu. Olası değerler:
| Eşleştirme modu | Mantıksal birim | Pozitif y-axis Extends... |
| MM_TEXT | 1 piksel | Aşağı doğru |
| MM_HIMETRIC | 0,01 mm | Yukarı |
| MM_TWIPS | 1/1440 yılında | Yukarı |
| MM_HIENGLISH | 0,001 inç | Yukarı |
| MM_LOMETRIC | 0.1 mm | Yukarı |
| MM_LOENGLISH | 0.00 inç | Yukarı |
Tüm bu moddan Windows tarafından tanımlanır. İki standart eşleştirme modu, MM_ISOTROPIC ve MM_ANISOTROPIC, CScrollViewiçin kullanılmaz. Sınıf kitaplığı pencere boyutunu görünüme ölçekleme için SetScaleToFitSize üye işlevi sağlar. Yukarıdaki tabloda sütun üç koordinat yönünü açıklar.
sizeTotal
Kaydırma görünümü toplam boyutu. Cx üye yatay ölçüde içerir. Cy üye dikey ölçüde içerir. Boyutları içinde mantıksal birimleridir. Cx ve cy sıfırdan büyük veya sıfıra eşit olmalıdır.
sizePage
Fare yanıt her yönde ilerlemek için yatay ve dikey tutarların bir kaydırma çubuğu şaft içinde tıklatın. Cx üye yatay tutarını içerir. Cy üye dikey tutarını içerir.
sizeLine
Fare yanıt her yönde ilerlemek için yatay ve dikey tutarların bir kaydırma okunu tıklatın. Cx üye yatay tutarını içerir. Cy üye dikey tutarını içerir.
Açıklamalar
Ne zaman görünümü hakkında haberdar olmak için SetScrollSizes arayın. Örneğin, belgenin ilk görüntülendiğinde veya boyutu değiştiğinde kaydırma özelliklerini ayarlamak için OnUpdate üye işlev için geçersiz kılma çağrı.
Genellikle boyutu bilgileri görünümün ilişkili belge belki de denilen bir belgeyi üye işlevini çağırarak edinir GetMyDocSize , türetilmiş belge sınıfınızın ile sağladığınız. Aşağıdaki kod, bu yaklaşımı gösterir.:
SetScrollSizes (nMapMode, &GetDocument ()-gt;GetMyDocSize ())
Alternatif olarak, bazen aşağıdaki kodda olduğu gibi sabit bir boyut ayarlamak gerekebilir:
SetScrollSizes (nMapMode, CSize (100, 100))
Windows eşleştirme modu MM_ISOTROPIC ya da MM_ANISOTROPICdışında herhangi bir eşleme moduna ayarlamanız gerekir. Bir serbest eşleştirme modu kullanmak istiyorsanız, SetScrollSizes yerine SetScaleToFitSize üye işlev çağrısı.
Örnek
void CScaleView::OnUpdate)
{
nbsp; // ...
/ / GetDocSize () üye fonksiyonu içinde uygulamak / / belge sınıfı; bir CSize döndürür.
SetScrollSizes (MM_LOENGLISH, GetDocument (')-> GetDocSize ());
ResizeParentToFit (); / / Default bShrinkOnly bağımsız değişkeni
// ...
}
CScrollView ge&nel bakış |nbsp; Sınıf üyeleri | Hiyerarşi çizelgesi
Ayrıca bkz: CScrollView::SetScaleToFitSize, CScrollView::GetDeviceScrollSizes, CScrollView::GetTotalSize