CMFCMaskedEdit クラス
更新 : 2007 年 11 月
CMFCMaskedEdit クラスは、マスク エディット コントロールをサポートします。これは、ユーザーの入力をマスクと検証し、テンプレートに従って検証結果を表示します。
class CMFCMaskedEdit : public CEdit
メンバ
パブリック コンストラクタ
名前 |
説明 |
---|---|
CMFCMaskedEdit::CMFCMaskedEdit |
既定のコンストラクタです。 |
CMFCMaskedEdit::~CMFCMaskedEdit |
デストラクタです。 |
パブリック メソッド
名前 |
説明 |
---|---|
ユーザー入力の検証を無効にします。 |
|
GetWindowText メソッドでマスク文字のみ取得するかどうかを指定します。 |
|
マスク エディット コントロールを初期化します。 |
|
マスク エディット コントロールにより、ユーザー入力の特定のグループを選択するか、またはすべてのユーザー入力を選択するかを指定します。 |
|
テキスト検証時の比較対象をマスク文字に限定するか、マスク全体にするかを指定します。 |
|
CMFCMaskedEdit::GetThisClass |
このクラス型に関連付けられた CRuntimeClass オブジェクトへのポインタを取得するために、フレームワークによって使用されます。 |
マスク エディット コントロールから検証済みのテキストを取得します。 |
|
ユーザーが入力できる有効な文字の文字列を指定します。 |
|
マスク エディット コントロールにプロンプトを表示します。 |
プロテクト メソッド
名前 |
説明 |
---|---|
指定された文字を、対応するマスク文字と比較して検証するために、フレームワークによって呼び出されます。 |
解説
アプリケーションで CMFCMaskedEdit コントロールを使用するには、次の手順を実行します。
1. ウィンドウ クラスに CMFCMaskedEdit オブジェクトを埋め込みます。
2. CMFCMaskedEdit::EnableMask メソッドを呼び出して、マスクを指定します。
3. CMFCMaskedEdit::SetValidChars メソッドを呼び出して、有効な文字のリストを指定します。
4. CMFCMaskedEdit::SetWindowText メソッドを呼び出して、マスク エディット コントロールの既定のテキストを指定します。
5. CMFCMaskedEdit::GetWindowText メソッドを呼び出して、検証済みのテキストを取得します。
1 つ以上のメソッドを呼び出してマスク、有効な文字、および既定のテキストを初期化しない場合、マスク エディット コントロールは標準のエディット コントロールのように動作します。
使用例
EnableMask メソッドを使用してマスク エディット コントロールのマスクを作成し、SetValidChars メソッドを使用してユーザーが入力できる有効な文字の文字列を指定し、さらに SetWindowText メソッドを使用してマスク エディット コントロールにプロンプトを表示することで、マスク (電話番号など) を設定する方法を次の例に示します。この例は、「NewControls サンプル : MFC コントロールのデモ アプリケーション」の一部です。
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