对窗口进行缩放(转载请注明出处,谢谢!!!)

  1. 从上面微调按钮获得值赋值给类视图变量m_Scale
  2. 类视图->属性->重写OnPrepareDC 虚函数->在里面写上如下代码
    CScrollView::OnPrepareDC(pDC,pInfo);
    CbookDoc *pDoc = GetDocument();
    pDC->SetMapMode(MM_ANISOTROPIC);
    CSize DocSize = pDoc->GetDocSize();
    pDC->SetWindowExt(DocSize);
    int xLogPixels = pDC->GetDeviceCaps(LOGPIXELSX);
    int yLogPixels = pDC->GetDeviceCaps(LOGPIXELSY);
    int xExtent = (DocSize.cx*xLogPixels*m_Scale) / 100;
    int yExtent = (DocSize.cy*yLogPixels*m_Scale) / 100;
    pDC->SetViewportExt(xExtent, yExtent);

    对窗口进行缩放(转载请注明出处,谢谢!!!)_第1张图片

  3. 重新写视图类中的重载函数OnInitalUpdate->在里面添加如下代码
    对窗口进行缩放(转载请注明出处,谢谢!!!)_第2张图片
  4. 在视图类的构造函数中添加下面的函数,用于初始化窗口
    对窗口进行缩放(转载请注明出处,谢谢!!!)_第3张图片
  5. 在微调按钮确定按过之后添加ResetScrollSizes()函数,它是自己写的代码,具体如下所示
    对窗口进行缩放(转载请注明出处,谢谢!!!)_第4张图片
    对窗口进行缩放(转载请注明出处,谢谢!!!)_第5张图片

  6. 此时就可以调整窗口缩放了

你可能感兴趣的:(对窗口进行缩放(转载请注明出处,谢谢!!!))