CMFCMaskedEdit选件类
CMFCMaskedEdit 选件类支持掩码编辑控件,验证用户输入掩码并基于模板显示验证的结果。
class CMFCMaskedEdit : public CEdit
成员
公共构造函数
名称 |
说明 |
---|---|
CMFCMaskedEdit::CMFCMaskedEdit |
默认构造函数。 |
CMFCMaskedEdit::~CMFCMaskedEdit |
析构函数。 |
公共方法
名称 |
说明 |
---|---|
验证用户输入的禁用。 |
|
指定 GetWindowText 方法是否只检索掩码字符。 |
|
初始化掩码编辑控件。 |
|
指定掩码是编辑控件选择用户输入的特定组,或者所有用户输入。 |
|
指定文本是否仅验证掩码字符,或者所有掩码。 |
|
CMFCMaskedEdit::GetThisClass |
用于由框架获取指向与此选件类类型的 CRuntimeClass 对象。 |
retrieves验证起始于掩码文本编辑控件。 |
|
指定用户可以输入有效字符的字符串。 |
|
显示在掩码一个提示编辑控件。 |
受保护的方法
名称 |
说明 |
---|---|
调用由结构验证指定的字符对应的掩码字符。 |
备注
执行以下步骤使用 CMFCMaskedEdit 控件在您的应用程序:
1. 嵌入一 CMFCMaskedEdit 对象添加到windows选件类。
2. 调用 CMFCMaskedEdit::EnableMask 方法指定掩码。
3. 调用 CMFCMaskedEdit::SetValidChars 方法指定有效字符列表。
4. 调用 CMFCMaskedEdit::SetWindowText 方法对掩码指定默认文本编辑控件。
5. 调用 CMFCMaskedEdit::GetWindowText 方法检索已验证的文本。
如果不调用一个或多个方法初始化掩码、有效字符和默认文本,掩码编辑控件的行为就象标准编辑控件的行为。
示例
下面的示例演示如何设置mask (例如电话号码)使用 EnableMask 方法创建掩码屏蔽编辑控件,SetValidChars 方法指定用户可以输入有效字符的字符串,并且,显示在掩码一个提示的 SetWindowText 方法编辑控件。 此示例是 新的控件示例的一部分。
CMFCMaskedEdit m_wndMaskEdit1;
CMFCMaskedEdit m_wndMaskEdit2;
CMFCMaskedEdit m_wndMaskEdit3;
CMFCMaskedEdit m_wndMaskEdit4;
CMFCMaskedEdit m_wndMaskEdit5;
CString m_strValue1;
CString m_strValue2;
CString m_strValue3;
CString m_strValue4;
CString m_strValue5;
...
BOOL CPage4::OnInitDialog()
{
CMFCPropertyPage::OnInitDialog();
// Mask 1: phone number
m_wndMaskEdit1.EnableMask(_T(" ddd ddd dddd"), // The mask string
_T("(___) ___-____"), // Literal, "_" char = character entry
_T(' ')); // Default char
m_wndMaskEdit1.SetValidChars(NULL); // Valid string characters
m_wndMaskEdit1.SetWindowText(_T("(123) 123-1212"));
// Mask 2: State, Zip Code
m_wndMaskEdit2.EnableMask(_T(" cc ddddd-dddd"), // The mask string
_T("State: __, Zip: _____-____"), // Literal, "_" char = character entry
_T(' ')); // Backspace replace char
m_wndMaskEdit2.SetValidChars(NULL); // Valid string characters
m_wndMaskEdit2.SetWindowText(_T("State: NY, Zip: 12345-6789"));
// Mask 3: serial code
m_wndMaskEdit3.EnableMask(_T(" AAAA AAAA AAAA AAAA"), // The mask string
_T("S/N: ____-____-____-____"), // Literal, "_" char = character entry
_T('_')); // Backspace replace char
m_wndMaskEdit3.SetValidChars(NULL); // Valid string characters
m_wndMaskEdit3.SetWindowText(_T("S/N: FPR5-5678-1234-8765"));
// Mask 4: 0xFFFF
m_wndMaskEdit4.EnableMask(_T(" AAAA"), // The mask string
_T("0x____"), // Literal, "_" char = character entry
_T('_')); // Backspace replace char
m_wndMaskEdit4.SetValidChars(_T("1234567890ABCDEFabcdef")); // Valid string characters
m_wndMaskEdit4.SetWindowText(_T("0x01AF"));
// Mask 5: digits only
m_wndMaskEdit5.DisableMask(); // Don't use the mask
m_wndMaskEdit5.SetValidChars(_T("1234567890")); // Valid string characters
m_wndMaskEdit5.SetWindowText(_T("1234567890"));
return TRUE; // return TRUE unless you set the focus to a control
}
void CPage4::OnButtonGet()
{
m_wndMaskEdit1.GetWindowText(m_strValue1);
m_wndMaskEdit2.GetWindowText(m_strValue2);
m_wndMaskEdit3.GetWindowText(m_strValue3);
m_wndMaskEdit4.GetWindowText(m_strValue4);
m_wndMaskEdit5.GetWindowText(m_strValue5);
UpdateData(FALSE);
}
继承层次结构
要求
标头: afxmaskededit.h