Freigeben über


CScrollView::SetScrollSizes

Rufen Sie SetScrollSizes auf, wenn die Ansicht im Begriff ist aktualisiert.

void SetScrollSizes( 
   int nMapMode, 
   SIZE sizeTotal, 
   const SIZE& sizePage = sizeDefault, 
   const SIZE& sizeLine = sizeDefault  
);

Parameter

  • nMapMode
    Der Zuordnungsmodus festzulegende für diese Ansicht. Mögliche Werte:

    Zuordnungsmodus

    Logische Einheit

    Positive y-Achse erweitert...

    MM_TEXT

    1 Pixel

    Nach unten

    MM_HIMETRIC

    0,01 mm

    Nach oben

    MM_TWIPS

    1/1440 Zoll

    Nach oben

    MM_HIENGLISH

    0,001 Zoll

    Nach oben

    MM_LOMETRIC

    0,1 mm

    Nach oben

    MM_LOENGLISH

    0,01 Zoll

    Nach oben

    Alle diese Modi werden von Windows definiert. Zwei Standardzuordnungsmodi, MM_ISOTROPIC und MM_ANISOTROPIC, werden nicht für CScrollView verwendet. Die Klassenbibliothek stellt die SetScaleToFitSize-Memberfunktion für die Skalierung der Ansicht Fenstergröße bereit. Spalte drei in der Tabelle oben beschreibt die beigeordnete Ausrichtung.

  • sizeTotal
    Die Gesamtgröße der Bildlaufansicht. Der cx-Member enthält den horizontalen Wertebereich. Der cy-Member enthält den vertikalen Wertebereich. Größen sind in logischen Einheiten. müssen cx und cy größer oder gleich 0 sein.

  • sizePage
    Die horizontale und vertikale Größen für den Bildlauf in einer Richtung als Reaktion auf einen Mausklick in einem Schaft für Bildlaufleiste. Der cx-Member enthält die horizontale Menge. Der cy-Member enthält die vertikale Menge.

  • sizeLine
    Die horizontale und vertikale Größen für den Bildlauf in einer Richtung als Reaktion auf einen Mausklick in einem Bildlaufpfeil. Der cx-Member enthält die horizontale Menge. Der cy-Member enthält die vertikale Menge.

Hinweise

Rufen Sie ihn in der Überschreibung der OnUpdate-Memberfunktion auf, um Eigenschaften anzupassen, wenn wird beispielsweise das Dokument zuerst angezeigt oder, wenn die Größe ändert.

Sie erhalten normalerweise Größeninformationen aus dem zugeordneten Dokument der Ansicht, indem Sie eine Dokumentenmemberfunktion aufrufen, möglicherweise aufgerufen GetMyDocSize, das mit der abgeleiteten Dokumentklasse angeben. Der folgende Code veranschaulicht diesen Ansatz an:

CMyScrollDoc* pMyDoc = (CMyScrollDoc*)GetDocument();
SetScrollSizes(nMapMode, pMyDoc->GetMyDocSize());

Alternativ müssen Sie möglicherweise manchmal eine feste Größe, wie im folgenden Code festlegen:

SetScrollSizes(nMapMode, CSize(100, 100));

Sie müssen den Zuordnungsmodus auf eine der Windows-Zuordnungsmodi außer MM_ISOTROPIC oder MM_ANISOTROPIC festlegen. Wenn Sie einen zwanglosen Zuordnungsmodus verwenden möchten, rufen Sie die SetScaleToFitSize-Memberfunktion anstelle SetScrollSizes auf.

Beispiel

void CMyScrollView::OnUpdate(CView* /*pSender*/, LPARAM /*lHint*/, 
   CObject* /*pHint*/)
{
   // Implement a GetMyDocSize() member function in  
   // your document class; it returns a CSize.
   CMyScrollDoc* pMyDoc = (CMyScrollDoc*)GetDocument();
   SetScrollSizes(MM_LOENGLISH, pMyDoc->GetMyDocSize());
   ResizeParentToFit();   // Default bShrinkOnly argument
}
void CMyScrollView::OnInitialUpdate()
{
   CScrollView::OnInitialUpdate();

   // The GetMyDocSize() member function is implemented in  
   // your document class. The return type is CSize.
   CMyScrollDoc* pMyDoc = (CMyScrollDoc*)GetDocument();
   SetScrollSizes(MM_TEXT, pMyDoc->GetMyDocSize());
}

Anforderungen

Header: afxwin.h

Siehe auch

Referenz

CScrollView-Klasse

Hierarchiediagramm

CScrollView::SetScaleToFitSize

CScrollView::GetDeviceScrollSizes

CScrollView::GetTotalSize