#if !defined(__KTMENURESOURCE_H__) #define __KTMENURESOURCE_H__ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "KTMenuBase.h" class KTMenuResource : public KTMenuBase { DECLARE_SERIAL(KTMenuResource) public: // 析构与构造 KTMenuResource(); virtual ~KTMenuResource(); // 清除资源信息 void Clean(); // 序列化 virtual void Serialize(CArchive& ar); // 通过菜单文件文本行创建相关子项 virtual KTMenuBase* CreateItem(CString& sLine); // 获取资源 BOOL GetResource(LPCTSTR pszRes, LPCTSTR& pszIcon, LPCTSTR& pszInfo) const; LPCTSTR GetResourceIcon(LPCTSTR pszRes) const; HBITMAP GetResourceIcon(HINSTANCE hRes, LPCTSTR pszRes); LPCTSTR GetResourceInfo(LPCTSTR pszRes); protected: // 资源信息[KTResItem] CMapStringToPtr m_mapItem; class KTResItem { public: KTResItem() {} ~KTResItem() {} CString m_sIcon; CString m_sInfo; }; }; #endif // !defined(__KTMENURESOURCE_H__)