UiHelper2.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:2k
源码类别:

模拟服务器

开发平台:

C/C++

  1. /* 
  2.  * File:     KUiHelper2.h
  3.  * Desc:     详细帮助窗口
  4.  * Author:   flying
  5.  * Creation: 2003/7/16
  6.  */
  7. //////////////////////////////////////////////////////////////////////////
  8. //                     帮助界面文件名字的历史来历
  9. // 为什么详细帮助界面叫做Helper2而由详细帮助界面激活的图片帮助界面叫做
  10. // Helper呢?这是有原因的。什么原因呢?最初的时候传说需要一个类似Diablo
  11. // 按H弹出的关于按钮的图片帮助。这也是最初所理解的帮助系统,而且在那时
  12. // 实现,名字自然叫做Helper了。之后需要一个索引类型的帮助,而且把原先所
  13. // 要求的帮助系统转移到那里去激活,于是在开发时间上在图片帮助之后的索引
  14. // 帮助就叫做Helper2了。口合  口合
  15. //////////////////////////////////////////////////////////////////////////
  16. //-----------------------------------------------------------------------------
  17. #pragma once
  18. #if !defined _UIHELPER2
  19. #define _UIHELPER2
  20. #include "../Elem/WndShowAnimate.h"
  21. #include "../Elem/WndButton.h"
  22. #include "../Elem/WndScrollBar.h"
  23. #include "../Elem/WndList.h"
  24. #include "../Elem/WndMessageListBox.h"
  25. #define MAX_INDEX_NUM 512
  26. class KUiHelper2 : protected KWndShowAnimate
  27. {
  28. public:
  29. //打开窗口,返回唯一的一个类对象实例
  30. static KUiHelper2* OpenWindow(bool bShow);
  31. //如果窗口正被显示,则返回实例指针
  32. static KUiHelper2*  GetIfVisible();
  33. //关闭窗口,同时可以选则是否删除对象实例
  34. static void  CloseWindow(bool bDestory);
  35. //载入界面方案
  36. static void  LoadScheme(const char* pScheme);
  37. private:
  38. KUiHelper2();
  39. ~KUiHelper2();
  40. void Initialize();
  41. int WndProc(unsigned int uMsg, unsigned int uParam, int nParam);
  42. void LoadIndexList(const char* pScheme);
  43. void Clear();
  44. void UpdateData(int nIndex);
  45. private:
  46. static KUiHelper2* m_pSelf;
  47. KWndButton m_BtnClose;
  48. KWndButton m_BtnPic;
  49. KWndButton              m_BtnKeyboard;
  50. KWndButton              m_BtnWuxing;
  51. KWndList m_IndexList;
  52. KWndScrollBar m_IndexScroll;
  53. KWndMessageListBox m_MessageList;
  54. KWndScrollBar m_MessageScroll;
  55. int m_nIndexCount;
  56. typedef struct _IndexData
  57. {
  58. char szName[128];
  59. char szIni[128];
  60. char szIniSection[128];
  61. } IndexData;
  62. IndexData m_IndexData[MAX_INDEX_NUM];
  63. };
  64. #endif