次の方法で共有


ダイアログ オブジェクトからのデータの取得

フレームワークには、ダイアログ ボックスのコントロールの値を初期化したり、コントロールから値を取得したりするための簡単な手段が用意されています。 手間のかかる手動の方法は、コントロール ウィンドウに適用される、CWnd クラスの SetDlgItemText メンバー関数や GetDlgItemText メンバー関数などの関数を呼び出すことです。 それらの関数を使用する場合は、SetWindowTextGetWindowText などの関数を呼び出すことにより、各コントロールに個別にアクセスして値を設定または取得します。 フレームワークで用意されている手段では、初期化と取得の両方が自動化されます。

ダイアログ データ エクスチェンジ (DDX: Dialog Data eXchange) では、ダイアログ ボックスのコントロールとダイアログ オブジェクトのメンバー変数の間で、簡単にデータを交換できます。 このデータ交換は、双方向で機能します。 ダイアログ ボックスのコントロールを初期化するには、ダイアログ オブジェクトのデータ メンバーの値を設定します。その値は、ダイアログ ボックスが表示される前にフレームワークによってコントロールに転送されます。 ダイアログのデータ メンバーは、ユーザーが入力したデータでいつでも更新できます。 更新されたデータは、データ メンバー変数を参照することによって使用できます。

ダイアログ データ バリデーション (DDV: Dialog Data Validation) を使用すると、自動的にチェックされたダイアログ コントロールの値を整理できます。

DDX と DDV の詳細については、「ダイアログ データ エクスチェンジとダイアログ データ バリデーション」を参照してください。

モーダル ダイアログ ボックスの場合は、DoModal によって IDOK が返されてから、ダイアログ オブジェクトが破棄されるまでの間にユーザーの入力したデータを取得できます。 モードレス ダイアログ ボックスの場合は、引数が TRUEUpdateData を呼び出してから、ダイアログ クラスのメンバー変数にアクセスすると、いつでもダイアログ オブジェクトからデータを取得できます。 詳細については、「ダイアログ データ エクスチェンジとダイアログ データ バリデーション」を参照してください。

参照

概念

ダイアログ ボックスの有効期間