本文整理汇总了C++中CCoolBarItem::DoUpdate方法的典型用法代码示例。如果您正苦于以下问题:C++ CCoolBarItem::DoUpdate方法的具体用法?C++ CCoolBarItem::DoUpdate怎么用?C++ CCoolBarItem::DoUpdate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CCoolBarItem
的用法示例。
在下文中一共展示了CCoolBarItem::DoUpdate方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnUpdateCmdUI
void CCoolBarCtrl::OnUpdateCmdUI(CFrameWnd* pTarget, BOOL bDisableIfNoHndler)
{
UINT nIndex = 0;
BOOL bDirty = FALSE;
BOOL bLocked = FALSE;
if ( m_pSyncObject != NULL )
{
bLocked = m_pSyncObject->Lock( 200 );
}
for ( POSITION pos = m_pItems.GetHeadPosition() ; pos ; )
{
CCoolBarItem* pItem = (CCoolBarItem*)m_pItems.GetNext( pos );
if ( pItem->m_nID == ID_SEPARATOR ) continue;
if ( pItem->m_nCtrlID ) continue;
pItem->m_pOther = this;
pItem->m_nIndex = nIndex++;
pItem->m_nIndexMax = m_pItems.GetCount();
pItem->m_bDirty = FALSE;
BOOL bEnabled = pItem->m_bEnabled;
if ( ! CWnd::OnCmdMsg( pItem->m_nID, CN_UPDATE_COMMAND_UI, pItem, NULL ) )
{
pItem->DoUpdate( pTarget, bDisableIfNoHndler );
}
pItem->m_bDirty |= ( pItem->m_bEnabled != bEnabled );
bDirty |= pItem->m_bDirty;
}
if ( bLocked ) m_pSyncObject->Unlock();
if ( bDirty ) OnUpdated();
}