PeeperMenu.h
上传用户:xztxsm
上传日期:2007-02-12
资源大小:150k
文件大小:2k
源码类别:

远程控制编程

开发平台:

Visual C++

  1. ///////////////////////////////////////////////////////////////////////////////
  2. // 远程控制软件-偷窥者  菜单类                                               //
  3. // 日期:2001/10/02                                                           //
  4. // 作者:刘东发                                                               //
  5. // Email:dongfa@yeah.net                                                     //
  6. // http://dongfa.yeah.net                                                    //
  7. // OICQ:5584173  阿东                                                        //
  8. // 作者声明:                                                                 //
  9. //     此部分代码全是作者所写,可以随便传播,但要保持文件的完整性,有问题     //
  10. // 或者意见请来信,谢谢!                                                      //
  11. ///////////////////////////////////////////////////////////////////////////////
  12. #ifndef __PEEPER_MENU_H__
  13. #define __PEEPER_MENU_H__
  14. typedef struct
  15. {
  16. CString strText;
  17. int     nMenuID; // -2:顶层菜单条   -1:弹出菜单  0:分隔条  >0:一般的菜单
  18. }PEEPERMENU, *LPPEEPERMENU;
  19. class CPeeperMenu : public CMenu  
  20. {
  21. public:
  22. CPeeperMenu();
  23. virtual ~CPeeperMenu();
  24. BOOL LoadMenu(UINT uMenuID, UINT uToolBarID = 0, CSize sz = CSize(16, 15));
  25. BOOL AttachMenu(HMENU hMenu, UINT uToolBarID = 0, CSize sz = CSize(16, 15));
  26. BOOL DetachMenu();
  27. BOOL ChangeStyle(HMENU hMenu, BOOL bTop = FALSE);
  28. void AppendMenu(UINT uID, CString strText);
  29. void SetBkImage(UINT uID);
  30. int GetImageFromToolBar(UINT uToolBarID, CSize sz, 
  31. CImageList *pImageList, CUIntArray *uIDArray);
  32. int AddToolBar(UINT uToolBarID, CSize sz);
  33. int DrawBmp(CDC *pDC, UINT uID, CRect rect, BOOL bStretch = FALSE);
  34. protected:
  35. void ClearMemory();
  36. int  GetIndexByID(UINT uID);
  37. void DrawGradRect(CDC *pDC, CRect rect, COLORREF cr1, COLORREF cr2, BOOL bHor = TRUE); 
  38. protected:
  39. CImageList m_ilImageList;
  40. CUIntArray m_uIDArray;
  41. CObList m_obMenuList;
  42. int m_nMenuHeight;
  43. int m_nMenuWidth;
  44. int m_nSepHeight;
  45. int m_nSpace;
  46. CSize m_szMenuBk;
  47. CSize m_szMenuIcon;
  48. UINT m_uBackBmpID;
  49. public:
  50. virtual void DrawItem(LPDRAWITEMSTRUCT lpDIS);
  51. virtual void MeasureItem(LPMEASUREITEMSTRUCT lpMIS);
  52. };
  53. #endif // __PEEPER_MENU_H__