ON_UPDATE_COMMAND_UI

在Document/View的MFC程序中,要想改变工具栏上图标的状态并不是光设置了状态就会起作用的。事实上MFC会调用ON_UPDATE_COMMAND_UI的消息来确定工具栏上图标的状态,所以需要映射这个消息的处理函数,然后在其中修改图标状态。

Example:

 

ON_UPDATE_COMMAND_UI(IDT_START_DEBUG, OnUpdateToolBarUI)

void CMainFrame::OnUpdateToolBarUI( CCmdUI* pUI )
{
 switch(m_state.state)
 {
 case 0:
 case 1:  
  pUI->Enable(TRUE);  
  break;
 case 2:
  pUI->Enable(TRUE);
  break;
 case 3:
  pUI->Enable(FALSE);
  break;

 }
 
}

By Lu Jun

80后男,就职于软件行业。习于F*** GFW。人生48%时间陪同电子设备和互联网,美剧迷,高清视频狂热者,游戏菜鸟,长期谷粉,临时果粉,略知摄影。

Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.