次の方法で共有


CMFCMaskedEdit クラス

更新 : 2007 年 11 月

CMFCMaskedEdit クラスは、マスク エディット コントロールをサポートします。これは、ユーザーの入力をマスクと検証し、テンプレートに従って検証結果を表示します。

class CMFCMaskedEdit : public CEdit

メンバ

パブリック コンストラクタ

名前

説明

CMFCMaskedEdit::CMFCMaskedEdit

既定のコンストラクタです。

CMFCMaskedEdit::~CMFCMaskedEdit

デストラクタです。

パブリック メソッド

名前

説明

CMFCMaskedEdit::DisableMask

ユーザー入力の検証を無効にします。

CMFCMaskedEdit::EnableGetMaskedCharsOnly

GetWindowText メソッドでマスク文字のみ取得するかどうかを指定します。

CMFCMaskedEdit::EnableMask

マスク エディット コントロールを初期化します。

CMFCMaskedEdit::EnableSelectByGroup

マスク エディット コントロールにより、ユーザー入力の特定のグループを選択するか、またはすべてのユーザー入力を選択するかを指定します。

CMFCMaskedEdit::EnableSetMaskedCharsOnly

テキスト検証時の比較対象をマスク文字に限定するか、マスク全体にするかを指定します。

CMFCMaskedEdit::GetThisClass

このクラス型に関連付けられた CRuntimeClass オブジェクトへのポインタを取得するために、フレームワークによって使用されます。

CMFCMaskedEdit::GetWindowText

マスク エディット コントロールから検証済みのテキストを取得します。

CMFCMaskedEdit::SetValidChars

ユーザーが入力できる有効な文字の文字列を指定します。

CMFCMaskedEdit::SetWindowText

マスク エディット コントロールにプロンプトを表示します。

プロテクト メソッド

名前

説明

CMFCMaskedEdit::IsMaskedChar

指定された文字を、対応するマスク文字と比較して検証するために、フレームワークによって呼び出されます。

解説

アプリケーションで 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);
}

継承階層

CObject

   CCmdTarget

      CWnd

         CEdit

            CMFCMaskedEdit

必要条件

ヘッダー : afxmaskededit.h

参照

概念

MFC 階層図

参照

CEdit クラス

その他の技術情報

クラス (MFC Feature Pack)