CGengduoPageUI.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #pragma once
  2. #include "../pch/pch.h"
  3. #include "CBasePageUI.h"
  4. #include "../wnd/CModalWnd.h"
  5. class CGengduoPageUI : public CBasePageUI
  6. {
  7. public:
  8. CGengduoPageUI();
  9. ~CGengduoPageUI();
  10. //初始化当前页面的展示,处理默认展示效果,在页面每次被选中加载(注意不是页面创建构造)的时候调用,如果多次选中会多次调用,这里要避免数据重复处理
  11. void InitShow();
  12. //处理按钮点击类事件
  13. void HandleClickMsg(TNotifyUI& msg);
  14. //处理option切换事件
  15. void HandleSelectChangeMsg(TNotifyUI& msg);
  16. //处理下拉框、radio的切换事件
  17. void HandleItemSelectMsg(TNotifyUI& msg);
  18. //处理编辑框输入内容改变事件
  19. void HandleTextChangedMsg(TNotifyUI& msg);
  20. //处理扫码枪捕捉到的扫码信息
  21. void HandleTextCapture(std::string content);
  22. //处理自定义消息,各个页面处理各个页面自己的(是自己处理的消息返回true,不是自己处理的消息返回false)
  23. bool HandleCustomMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
  24. private:
  25. //刷新展示
  26. void Refresh();
  27. //更新各个子控件的位置,在刷新的时候和位置变化的时候都调用
  28. void UpdateItemPos();
  29. void SetPos(RECT rc, bool bNeedInvalidate = true);
  30. //常用模块的操作
  31. void QianYi(CControlUI* pSender);
  32. void HouYi(CControlUI* pSender);
  33. void Jiaohuan(CControlUI* pSender);
  34. void GengduoQianYi(CControlUI* pSender);
  35. void GengduoHouYi(CControlUI* pSender);
  36. void GengduoJiaohuan(CControlUI* pSender);
  37. void DianjiBtn(CControlUI* pSender);
  38. //把变化后的配置,写入数据库
  39. void Save();
  40. private:
  41. //是否正在请求服务器
  42. bool m_is_handle = false;
  43. //模态对话框有关的
  44. bool m_is_show_modal_wnd = false;
  45. CModalWnd* m_curModalWnd;
  46. std::string m_changyongString;
  47. std::string m_gengduoString;
  48. //当前控件的实际宽度
  49. int m_nPageWidth;
  50. };