龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VC开发 >

VC中自动改变控件位置和大小的对话框类(5)

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
switch (iFlag) { case MOVEX: // X方向移动 iLeft += (iIncrementX * iPercent / 100); break; case MOVEY: // Y方向移动 iTop += (iIncrementY * iPercent / 100); break; case MOVEXY: // X方向和Y方向

   switch (iFlag)
   {
    case MOVEX: // X方向移动
     iLeft += (iIncrementX * iPercent / 100);
     break;

    case MOVEY: // Y方向移动
     iTop += (iIncrementY * iPercent / 100);
     break;

    case MOVEXY: // X方向和Y方向同时移动
     iLeft += (iIncrementX * iPercent / 100);
     iTop += (iIncrementY * iPercent / 100);
     break;

    case ELASTICX: // X方向改变大小
     iWidth += (iIncrementX * iPercent / 100);
     break;

    case ELASTICY: // Y方向改变大小
     iHeight += (iIncrementY * iPercent / 100);
     break;

    case ELASTICXY: // X方向和Y方向同时改变大小
     iWidth += (iIncrementX * iPercent / 100);
     iHeight += (iIncrementY * iPercent / 100);
     break;

    default:
     ;
   }

   // 把控件移动到新位置
   pWndCtrl->MoveWindow(iLeft, iTop, iWidth, iHeight);
  }
 }

 // 把图标移动到对话框右下角
 if (IsWindow(m_wndSizeIcon.GetSafeHwnd()))
  m_wndSizeIcon.MoveWindow(cx - m_bitmap.bmWidth, cy - m_bitmap.bmHeight, m_bitmap.bmWidth, m_bitmap.bmHeight);

 // 记录对话框client区域的大小
 if (nType != SIZE_MINIMIZED)
 {
  m_iClientWidth = cx;
  m_iClientHeight = cy;
 }
}

void ClxDialog::OnSizing(UINT nSide, LPRECT lpRect)
{
 CDialog::OnSizing(nSide, lpRect);

精彩图集

赞助商链接