📄 editst.h
字号:
#if !defined(AFX_EDITST_H__19A320A8_6234_48B6_90EF_65D75DE7FFD6__INCLUDED_)
#define AFX_EDITST_H__19A320A8_6234_48B6_90EF_65D75DE7FFD6__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// editst.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// CEditST window
///标准文本输入框类,请应用于程序的各个具体要输入的数据中
/**
* 使用方法: \n
* (1)在相应的对话框类中,建立该文本输入框控件变量,基类为CEditST \n
* (2)在对话框初始化时,文本框输入格式 \n
* (3)在对话框需要返回时,如点OK之前,检查并获取输入 \n
* 详见:testdlg.h, testdlg.cpp的使用 \n
*/
class CEditST : public CEdit
{
// Construction
public:
CEditST();
// Attributes
public:
// Operations
public:
//设成字符串输入格式
void SetStrFormat(unsigned int MaxLength = 40);
//设成整数输入格式,默认最小值0,最大值FFFFFF
void SetIntFormat(unsigned int MinInt=0, unsigned int MaxInt=0xFFFFFFFF);
//设成BCD输入格式
void SetBcdFormat(unsigned int BcdLength);
//设成十六进制数输入格式,输入0表示长度可任意变化
void SetHexFormat(unsigned int HexLength=0);
//设成金额输入格式
void SetAmountFormat();
//设成总参数量输入格式
void SetFltNumFormat();
//设成日期输入格式,范围
void SetDateFormat();
void SetMinDate(const unsigned char *MinDate=NULL);
void SetMaxDate(const unsigned char *MaxDate=NULL);
//设成时间输入格式
void SetTimeFormat();
//获取字符串的输入结果
int GetStrResult(char *StrBuf);
//获取整数的输入结果
int GetIntResult(unsigned int &Result);
//获取BCD的输入结果
int GetBcdResult(unsigned char *BcdBuf, unsigned int &LenBuf);
//获取十进制的输入结果
int GetHexResult(unsigned char *HexBuf, unsigned int &LenBuf);
//获取金额输入结果,以分为单位
int GetAmountResult(unsigned int &Amount);
//获取总参数量输入结果
int GetFltNumResult(unsigned int &NumWithoutDot, unsigned char &FloatPartOfLength);
//获取日期输入结果
int GetDateResult(unsigned char *DateBuf);
int GetDateResult(unsigned int &Year, unsigned char &Month, unsigned char &Day);
//获取时间输入结果
int GetTimeResult(unsigned char &Hour, unsigned char &Minute, unsigned char &Second);
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CEditST)
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CEditST();
// Generated message map functions
protected:
//{{AFX_MSG(CEditST)
afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
enum InputFlag{
INPUT_STR = 0,
INPUT_INT,
INPUT_BCD,
INPUT_HEX,
INPUT_AMOUNT,
INPUT_FLTNUM,
INPUT_DATE,
INPUT_TIME,
};
InputFlag m_InputFlag;//输入格式
CString m_strInput;//输入
char m_strResult[500];//字符串结果,范围
unsigned int m_strMaxLength;
unsigned int m_intResult, m_intMinInt, m_intMaxInt;//整数结果,范围
unsigned char m_bcdResult[500];//BCD输入结果,范围
unsigned int m_bcdLength;
unsigned char m_hexResult[500];//HEX输入结果,范围
unsigned char m_hexLength;
unsigned char m_dateMin[5], m_dateMax[5], m_dateResult[5];//日期输入结果,范围
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_EDITST_H__19A320A8_6234_48B6_90EF_65D75DE7FFD6__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -