移植並改良 Office 2000 風格智慧型選單 (自動隱藏不常用項目) 至 MFC 專案,支援多文件介面 (MDI)、分頁式子視窗、自繪選單等進階功能。

ID_SHOWFULL (32792) - 「顯示完整選單」ID_INTMODE (32794) - 「開啟/關閉智慧選單模式」OffMenu 資料夾所有 .cpp/.h 加入專案。#include "MDIFrmEx.h"
#include "ToolBarEx.h"
class CMainFrame : public CMDIFrameEx { // 原為 CMDIFrameWnd
CToolBarEx m_wndToolBar; // 原為 CToolBar
};
CMDIFrameEx。CWinAppEx (含 WinAppEx.h)。CWinAppEx。CMultiDocTemplateEx,框架視窗建立流程微調。重寫 CMenuBar 兩個虛擬函式:
WORD IncMenuUsage(CMenuEx*, UINT pos, WORD curUsage):更新選單項使用計數。BOOL EvaluateIfGrayed(CMenuEx*, UINT pos, WORD& curUsage, int iMed, int iRange):判斷是否隱藏/灰化,可修改使用計數。需儲存應用程式自訂資料時,可使用 CMenuEx::GetExtraDataPtr(UINT)。
注意: 原始碼基於舊版 VC 範例修改,單文件介面 (SDI) 需自行調整CMultiDocTemplateEx、CMDIFrameEx相關類別。附帶範例為抓圖程式介面部分,含分頁顯示、自繪選單等完整功能。