📄 medit.h
字号:
#ifndef __CmEdit_h__
#define __CmEdit_h__
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
class CmEditChar
{
public:
CmEditChar() { m_bStaticChar = FALSE; }
CmEditChar(CString strChars)
{
m_strValids = strChars;
m_bStaticChar = FALSE;
}
CmEditChar(CString strChars, BOOL bStaticChar)
{
m_strValids = strChars;
m_bStaticChar = bStaticChar;
}
CString m_strValids;
CString m_strData;
BOOL m_bStaticChar;
};
#define MAX_CHARS 256
class CmEdit : public CEdit
{
public:
CmEdit();
virtual ~CmEdit();
BOOL Init(CString strMask, CString strInitialData = "");
BOOL SetPromptChar(CString strPromptChar);
void SetData(const CString& data);
CString GetData();
//{{AFX_VIRTUAL(CmEdit)
protected:
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
//}}AFX_VIRTUAL
protected:
BOOL m_bInit;
CString m_strPrompt;
CmEditChar* m_Char[MAX_CHARS];
int m_iNumChars;
int m_iCurrentChar;
BOOL m_bShiftDown;
BOOL Parse(const CString& strMask);
BOOL SetValidChars(const CString& strMask);
CString GetRange(CString szLow, CString szHigh);
// CString GetText(BOOL bDataOnly = FALSE);
// CString GetData() { return GetText(TRUE); }
int FindNextChar(int iStartPos, BOOL bStatic, BOOL bForward);
//{{AFX_MSG(CmEdit)
afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg void OnDestroy();
afx_msg void OnSetFocus(CWnd* pOldWnd);
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
DECLARE_DYNCREATE(CmEdit)
};
void AFXAPI DDX_CmEdit(CDataExchange* pDX, int nIDC, CmEdit& rControl, CString& data);
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -