CMainFrame在應用程序空閒的時候才根據命令處理(ON_UPDATE_COMMAND_UI)更新界面,包括菜單、工具欄。
於是,正確的使能禁能按鈕只能通過命令流來處理。
先在CMainFrame類中設置一個bool變量m_bButtonEn。
然後對相應的工具欄按鈕添加更新命令ON_UPDATE_COMMAND_UI(ID_BUTTON_xxx,OnUpdataxxx)
頭文件中這樣定義函數:afx_msg
void
OnUpdataxxx(CCmdUI *pCmdUI);
cpp文件中
void
CMainFrame::OnUpdataxxx(CCmdUI* pCmdUI)
{
pCmdUI->Enable(m_bButtonEn);
}
初始化m_bButtonEn = false; 按鈕就變灰了。