共用方式為


CScrollView::SetScrollSizes

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

參數

  • nMapMode
    要設定的對應模式中的項目。 可能的值包括:

    對應模式

    邏輯單位。

    正 Y 軸擴充…

    MM_TEXT

    1 個像素。

    向下

    MM_HIMETRIC

    0.01 公釐

    向上

    MM_TWIPS

    1/1440 英吋

    向上

    MM_HIENGLISH

    0.001 英吋

    向上

    MM_LOMETRIC

    0.1 公釐

    向上

    MM_LOENGLISH

    0.01 英吋

    向上

    這些模式是由 Windows 所定義。 兩個準則對應模式, MM_ISOTROPICMM_ANISOTROPIC,不支援的 CScrollView使用。 類別庫為稱為 檢視提供 SetScaleToFitSize 成員函式來視窗大小。 三個資料行上表中說明的座標方向。

  • sizeTotal
    捲動檢視的總大小。 cx 成員包含這個層級的範圍。 cy 成員包含這個垂直區域。 大小以邏輯單位。 cxcy 必須大於或等於 0。

  • sizePage
    要捲動的水平和垂直數量在回應滑鼠點選的每一個方向在捲軸)。 cx 成員包含水平的數量。 cy 成員包含垂直數量。

  • sizeLine
    要捲動的水平和垂直數量在回應滑鼠點選的每一個方向捲動箭號。 cx 成員包含水平的數量。 cy 成員包含垂直數量。

備註

會針對您的 OnUpdate 成員函式的覆寫調整捲動特性,當時,例如,文件一開始顯示時,或是當它會重新調整大小時。

您將透過呼叫資料成員函式通常會從檢視的關聯之檔案的大小資訊,或讓呼叫 GetMyDocSize,將衍生的資料類別提供。 下列程式碼顯示這種方法:

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

或者,您有時可能需要設定固定大小,如下列程式碼:

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

必須設定對應模式為任何視窗將除了 MM_ISOTROPICMM_ANISOTROPIC您的方式。 如果您想要使用一個不受限制的對應方法,請呼叫 SetScaleToFitSize 成員函式來取代 SetScrollSizes

範例

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

需求

Header: afxwin.h

請參閱

參考

CScrollView 類別

階層架構圖

CScrollView::SetScaleToFitSize

CScrollView::GetDeviceScrollSizes

CScrollView::GetTotalSize