次の方法で共有


コード ウィザードを使用した、コントロールへのタイプ セーフ アクセス

DDX 機能に慣れている場合は、 メンバー変数の追加ウィザード のコントロール プロパティを使用して、タイプセーフなアクセスを作成できます。 この方法は、コード ウィザードを使用せずにコントロールを作成するよりも簡単です。

コントロールの値にアクセスするだけの場合は、DDX がそれを提供します。 コントロールの値にアクセスするよりも多くの操作を行う場合は、メンバー変数の追加ウィザードを使用して、適切なクラスのメンバー変数をダイアログ クラスに追加します。 このメンバー変数をコントロール プロパティにアタッチします。

メンバー変数は、値プロパティではなく、コントロール プロパティを持つことができます。 Value プロパティは、コントロールから返されたデータの型 (CStringint など) を参照します。 コントロール プロパティは、型が MFC のコントロール クラス (CButtonCEdit など) の 1 つであるデータ メンバーを介してコントロールに直接アクセスできるようにします。

Note

特定のコントロールについては、必要に応じて、Value プロパティを持つ複数のメンバー変数と、Control プロパティを持つメンバー変数を 1 つだけ持つことができます。 コントロールにマップされている MFC オブジェクトは 1 つだけです。コントロールまたはその他のウィンドウに複数のオブジェクトがアタッチされていると、メッセージマップがあいまいになる可能性がありるためです。

このオブジェクトを使用して、コントロール オブジェクトの任意のメンバー関数を呼び出すことができます。 このような呼び出しは、ダイアログ ボックスのコントロールに影響します。 たとえば、型 CButton の変数m_Checkbox によって表されるチェックボックス コントロールの場合、次のように呼び出すことができます:

m_Checkbox.SetCheck(BST_CHECKED);

ここで、メンバー変数 m_Checkbox は、「コードウィザードを使用しないコントロールへのタイプ セーフ アクセス」に示されているメンバー関数 GetMyCheckbox と同じ目的を果たします。 このチェック ボックスが [自動] チェック ボックスでない場合は、ボタンがクリックされたときに、BN_CLICKED コントロール通知メッセージのダイアログ クラスのハンドラーが必要になります。

コントロールの詳細については、「コントロール」をご確認ください。

関連項目

ダイアログ ボックスのコントロールへのタイプ セーフ アクセス
MFC でのダイアログ ボックスの操作
コード ウィザードを使用しない、コントロールへのタイプ セーフ アクセス