天天看点

如何防止拖动窗体大小时控件闪烁的问题

void CXXXBrowser::OnSize(UINT nType, int cx, int cy)

{

  CDialog::OnSize(nType, cx, cy);

  if(m_closeBtn.m_hWnd==NULL)

    return;

  CRect rcClient;

  GetClientRect(&rcClient);

  CRect rcCloseBtn;

  m_closeBtn.GetClientRect(&rcCloseBtn);

  m_closeBtn.MoveWindow(rcClient.Width()-20,7,rcCloseBtn.Width(),rcCloseBtn.Height());

  m_minBtn.MoveWindow(rcClient.Width()-40,7,12,11);

  m_Browser.MoveWindow(rcClient.left+2,rcClient.top+100,rcClient.right-14,rcClient.bottom-110);

  m_Browser. SetRedraw(true);

}

void CXXXBrowser::OnSizing(UINT fwSide, LPRECT pRect)

{

  CDialog::OnSizing(fwSide, pRect);

  m_Browser. SetRedraw(false);

  // TODO: 在此处添加消息处理程序代码

}

继续阅读