DateEdit.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. #ifndef _MASKDEFINE_
  2. #define _MASKDEFINE_
  3. /////////////////////////////////////////////////////////////////////////////
  4. // CDateEdit window
  5. class CDateEdit : public CEdit
  6. {
  7. DECLARE_DYNAMIC(CDateEdit)
  8. // Construction
  9. public:
  10. CDateEdit();
  11. // Attributes
  12. public:
  13. BOOL m_bUseMask;//是否使用掩码
  14. BOOL m_isDate;//是否是日期格式
  15. BOOL m_isTime;//是否是时间格式
  16. BOOL m_isDateTime;//是否是日期时间格式
  17. BOOL m_isNumber; //是否是日期时间格式
  18. CString m_str;//存储用户输入的字符串
  19. CString m_strMask;//掩码
  20. CString m_strLiteral;//表示某位是否可输入,“_”表示可输入
  21. CString m_strValid;
  22. // CString m_strHours;
  23. // CString m_strMins;
  24. CString m_strName;
  25. CString m_strMaskLiteral;//存储预设的字符串,当用户输入退格键的时候使用
  26. BOOL m_bMaskKeyInProgress;
  27. // Operations
  28. public:
  29. // Overrides
  30. // ClassWizard generated virtual function overrides
  31. //{{AFX_VIRTUAL(CMaskEdit)
  32. //}}AFX_VIRTUAL
  33. // Implementation
  34. public:
  35. void SetDefault();
  36. void SetNow();
  37. void Reset();
  38. void SetClassType(LPCSTR pName, LPCSTR pMask = NULL);
  39. void SendChar(UINT nChar);
  40. void SetMask(LPCSTR lpMask,LPCSTR lpLiteral=NULL,LPCSTR lpValid=NULL);
  41. BOOL CheckChar(UINT nChar);
  42. virtual ~CDateEdit();
  43. LONG OnPaste(UINT, LONG);
  44. LONG OnCut(UINT, LONG);
  45. LONG OnClear(UINT, LONG);
  46. BOOL IsValid(const COleDateTime& date) const;
  47. // Generated message map functions
  48. protected:
  49. //{{AFX_MSG(CMaskEdit)
  50. afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
  51. afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
  52. afx_msg void OnEnSetfocus();
  53. //}}AFX_MSG
  54. DECLARE_MESSAGE_MAP()
  55. };
  56. /*
  57. class CDateEdit : public CMaskEdit
  58. {
  59. DECLARE_DYNAMIC(CDateEdit)
  60. // Constructors
  61. public:
  62. CDateEdit();
  63. // Implementation
  64. public:
  65. void SetDate(COleDateTime& Date);
  66. COleDateTime GetDate();
  67. protected:
  68. // Generated message map functions
  69. //{{AFX_MSG(CDateEdit)
  70. //}}AFX_MSG
  71. DECLARE_MESSAGE_MAP()
  72. };
  73. class CTimeEdit : public CMaskEdit
  74. {
  75. DECLARE_DYNAMIC(CTimeEdit)
  76. // Constructors
  77. public:
  78. CTimeEdit();
  79. // Implementation
  80. public:
  81. void SetTime(COleDateTime& Date);
  82. void SetTime(CString Date);
  83. COleDateTime GetTime();
  84. CString GetTimeStr();
  85. void SetHours(int hrs);
  86. void SetMins(int mins);
  87. protected:
  88. // Generated message map functions
  89. //{{AFX_MSG(CTimeEdit)
  90. //}}AFX_MSG
  91. DECLARE_MESSAGE_MAP()
  92. };
  93. */
  94. //void AFXAPI DDX_OleDate(CDataExchange* pDX, int nIDC, CDateEdit& rControl, COleDateTime& Date);
  95. //added the line below
  96. //void AFXAPI DDX_OleDate(CDataExchange* pDX, int nIDC, CTimeEdit& rControl, COleDateTime& Date);
  97. #endif