void SetScrollSizes ( int nMapMode, サイズ sizeTotal, const SIZEamp; サイズページ = sizeDefault、 const サイズ & sizeLine = sizeDefault );(&A)
パラメーター
nMapMode
このビューを設定するには、マッピング モード。使用可能な値が含まれます:
| マッピング モード | 論理ユニット | 正の y 軸を拡張... |
| MM_TEXT | 1 ピクセル | 下向き |
| MM_HIMETRIC | 0.01 mm | 上方 |
| MM_TWIPS | 1 1440 で | 上方 |
| MM_HIENGLISH | 0.001 インチ | 上方 |
| MM_LOMETRIC | 0.1 mm | 上方 |
| MM_LOENGLISH | 0.01 インチ | 上方 |
すべてのこれらのモードは、Windows によって定義されています。2 つの標準マッピング モード、 MM_ISOTROPIC MM_ANISOTROPIC、 CScrollViewは使用されません。クラス ライブラリは、ウィンドウのサイズを拡大または縮小のSetScaleToFitSizeメンバー関数を提供します。上記の表の 3 列目座標の方向についての説明します。
sizeTotal
スクロール ビューの合計サイズ。Cxメンバーには水平方向の範囲が含まれています。Cyメンバーには垂直方向の範囲が含まれています。サイズは論理単位です。Cxおよびcyの両方が 0 以上にする必要があります。
サイズページ
各方向に応答するには、マウスでスクロールするには、水平および垂直の量スクロール バー シャフトで] をクリックします。Cxメンバーには水平方向の量が含まれています。Cyメンバーには垂直方向の量が含まれます。
sizeLine
各方向に応答するには、マウスでスクロールするには、水平および垂直の量、スクロール矢印をクリックします。Cxメンバーには水平方向の量が含まれています。Cyメンバーには垂直方向の量が含まれます。
解説
ビューが更新されるときは、 SetScrollSizesを呼び出します。たとえば、文書が最初に表示されるとき、またはサイズが変更されたときのスクロールの特性を調整するには、 OnUpdateメンバー関数のオーバーライドで呼び出す。
おそらくと呼ばれるドキュメントのメンバー関数を呼び出して、サイズ情報は、通常、ビューの関連付けられているドキュメントから取得します GetMyDocSize 、派生したドキュメント クラスを指定します。この方法を次に示します:
SetScrollSizes (nMapMode、GetDocument ()-gt;GetMyDocSize (&))
また、あなたが次のコードのように、固定サイズを設定する必要があります。:
SetScrollSizes (nMapMode、CSize (100, 100))
MM_ISOTROPICまたはMM_ANISOTROPIC以外の Windows のマッピング モードのいずれかにマップ モードを設定する必要があります。制約のないマッピング モードを使用する場合は、 SetScrollSizesではなく、 SetScaleToFitSizeメンバー関数を呼び出す。
例
void CScaleView::OnUpdate){特価;// ...//、GetDocSize メンバー関数を実装する・ ・をドキュメント クラス;それは、CSize を返します。SetScrollSizes (MM_LOENGLISH、GetDocument ()-> GetDocSize ());ResizeParentToFit ();//デフォルト bShrinkOnly 引数// ...}
|Nbsp; CScrollView の概要クラス メンバー |階層図(&N)
参照特価;CScrollView::SetScaleToFitSize、 CScrollView::GetDeviceScrollSizes、 CScrollView::GetTotalSize(&N)