ビューのスクロールと拡大/縮小

MFC では、スクロールするビューと、ビューを表示するフレーム ウィンドウのサイズに合わせて自動的に拡大縮小するビューがサポートされています。 クラス CScrollView では、両方の種類のビューがサポートされています。

スクロールと拡大縮小の詳細については、「MFC リファレンス」のクラス CScrollView を参照してください。 スクロールの例については、「Scribble サンプル」を参照してください。

さらに詳しい情報

ビューのスクロール

多くの場合、ドキュメントのサイズは、ビューに表示できるサイズを超えます。 これは、ドキュメントのデータが増加したり、ユーザーがビューのフレームを決めるウィンドウを縮小したりした場合に発生する可能性があります。 このような場合、ビューがスクロールをサポートしている必要があります。

すべてのビューでは、OnHScroll および OnVScroll メンバー関数内でスクロールバーのメッセージを処理できます。 これらの関数を処理し、すべての作業を自分で実行するか、CScrollView クラスを使用してスクロール処理を行うことで、スクロールバーのメッセージを実装できます。

CScrollView を実行すると、次の処理が行われます。

  • ウィンドウとビューポートのサイズおよびマッピング モードを管理する

  • スクロールバーのメッセージに応じて自動的にスクロールする

「ページ」 (ユーザーがスクロールバーの シャフトをクリックしたとき) と「行」 (ユーザーがスクロール矢印をクリックしたとき) のスクロール間隔を指定できます。 ビューの特性に合わせて、これらの値を計画します。 たとえば、グラフィックス ビューでは 1 ピクセル単位の増分でスクロールできますが、テキスト ドキュメントの行の高さに応じて徐々にスクロールすることができます。

ビューの拡大縮小

ビューがフレーム ウィンドウのサイズに合わせて自動的に調整されるようにするには、スクロールではなく、CScrollView を使用して拡大縮小を行うことができます。 論理ビューは、ウィンドウのクライアント領域に正確に合致するように拡大または縮小されます。 拡大縮小されるビューにはスクロール バーはありません。

関連項目

ビューの使い方