fillsolidrect_onerasebkgnd 重影_bitblt函数(29)

电脑杂谈  发布时间:2017-03-10 14:21:13  来源:网络整理

// sign of nDelta

int nDelta2 = (nDelta == 0) ? 0 : ((nDelta < 0) ? -1 : 1);

(bHorz ? pBar->m_szHorz.cx : pBar->m_szVert.cy) += nDelta2;

nDelta -= nDelta2;

if (nDelta == 0) break;

}

// clear m_bKeepSize flags

if ((nDeltaOld == nDelta) || (nDelta == 0))

for (i = 0; i < nNumBars; i++)

arrSCBars[i]->m_bKeepSize = FALSE;

}

return TRUE;

}

void CSizingControlBar::AlignControlBars()

{

int nFirst, nLast, nThis;

GetRowInfo(nFirst, nLast, nThis);

BOOL bHorz = IsHorzDocked();

BOOL bNeedRecalc = FALSE;

int nAlign = bHorz ? -2 : 0;

CRect rc, rcDock;

m_pDockBar->GetWindowRect(&rcDock);

for (int i = nFirst; i <= nLast; i++)

{

CSizingControlBar* pBar =

(CSizingControlBar*) m_pDockBar->m_arrBars[i];

if (HIWORD(pBar) == 0) continue; // placeholder

if (!pBar->IsVisible()) continue;

pBar->GetWindowRect(&rc);

rc.OffsetRect(-rcDock.TopLeft());

if (pBar->IsKindOf(RUNTIME_CLASS(CSizingControlBar)))

rc = CRect(rc.TopLeft(),

bHorz ? pBar->m_szHorz : pBar->m_szVert);

if ((bHorz ? rc.left : rc.top) != nAlign)

{

if (!bHorz)

rc.OffsetRect(0, nAlign - rc.top - 2);

else if (m_nDockBarID == AFX_IDW_DOCKBAR_TOP)

rc.OffsetRect(nAlign - rc.left, -2);

else

rc.OffsetRect(nAlign - rc.left, 0);

pBar->MoveWindow(rc);

bNeedRecalc = TRUE;

}

nAlign += (bHorz ? rc.Width() : rc.Height()) - 2;

}

if (bNeedRecalc)

m_pDockSite->DelayRecalcLayout();

}

void CSizingControlBar::OnUpdateCmdUI(CFrameWnd* pTarget,

BOOL bDisableIfNoHndler)

{

UNUSED_ALWAYS(bDisableIfNoHndler);


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-36846-29.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...