网站首页  词典首页

请输入您要查询的计算机术语:

 

术语 CScrollView::SetScrollSizes
释义 CScrollView::SetScrollSizes

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

参数:
nMapMode要为这个视设置的映射模式。可能的取值包括:

Mapping ModeLogical UnitPositive y-axisExtends...
MM_TEXT
1个像素
向下

Mapping ModeLogical UnitPositive y-axisExtends...
MM_HIMETRIC
0.01毫米
向上
MM_TWIPS
1/1440英寸
向上
MM_HIENGLISH
0.001英寸
向上
MM_LOMETRIC
0.1毫米
向上
MM_LOENGLISH
0.01英寸
向上
所有的这些模式都是Windows定义的。两个标准的映射模式,MM_ISOTROPIC和MM_ANISOTROPIC,在CScrollView中没有使用。类库提供了SetScaleToFitSize成员函数来将视图的尺寸按比例变换为窗口的尺寸。

sizeTotal滚动视的总尺寸。cx成员包含了水平分量。cy成员包含了垂直分量。这些尺寸是以逻辑单位表示的。cx和cy都必须大于或等于0。
sizePage当鼠标在滚动条的条体上单击时,要在水平和垂直方向上滚动的量。cx中存放水平滚动量,cy成员中存放垂直滚动量。
sizeLine当响应鼠标单击滚动条的滚动箭头时要在水平或垂直方向上滚动的量。cx中存放水平滚动量,cy成员中存放垂直滚动量。

说明:
当视要被更新时,调用SetScrollSizes。在你的重载的OnUpdate成员函数中调用这个函数来调整滚动特性,例如,当文档第一次被显示或是被改变大小时。
通常,通过调用你的派生文档类的一个文档成员函数,可能是GetMyDocSize,你可以获得视的相关文档的尺寸信息。下面的代码给出了这种方法:
SetScrollSizes( nMapMode, GetDocument( )->GetMyDocSize( ) );
另外,你有时候也许需要设置一个固定的尺寸,就像下面的代码:
SetScrollSizes( nMapMode, CSize(100, 100) );
你必须将映射模式设置为除MM_ISOTROPIC或MM_ANISOTROPIC之外的任何Windows映射方式。如果你希望使用一种非限定的映射方式,可以调用SetScaleToFitSize成员函数来代替SetScrollSizes。

示例:
void CScaleView::OnUpdate( )
{
  // ...
  // Implement a GetDocSize( ) member function in
  // your document class; it returns a CSize.
  SetScrollSizes( MM_LOENGLISH, GetDocument( )->GetDocSize( ) );
  ResizeParentToFit( ); // Default bShrinkOnly argument
  // ...
}

请参阅:
CScrollView::SetScaleToFitSize, CScrollView::GetDeviceScrollSizes, CScrollView::GetTotalSize
随便看

 

MFC类库中文详解手册包含4274条MFC类库参考词条,基本涵盖了Microsoft基本类库中的类、全局函数、全局变量和宏的内容,是计算机编程的有利工具。

 

Copyright © 2004-2023 Winrtm.com All Rights Reserved
京ICP备2021023879号-40 更新时间:2025/1/9 3:43:38