メンバー変数を追加する
クラス ビューを使用して、クラスにメンバー変数を追加することができます。 メンバー変数は、データ交換とデータの入力規則に使用するか、一般にすることができます。 データ メンバー変数ウィザードは、関連情報を取得し、それを使用して適切な場所のソース ファイル内に要素を挿入するために設計されています。 リソース ビューのダイアログ エディターから、またはクラス ビューからメンバー変数を追加できます。
注意
ダイアログ ボックスを設計および実装しているときに、ダイアログ エディターを使用して、ダイアログ ボックス コントロールを追加し、コントロールのメンバー変数を実装するとより効率的である場合があります。
メンバー変数の追加ウィザードを使用して、リソース ビューにダイアログ コントロールのメンバー変数を追加するには:
リソース ビューでプロジェクト ノードとダイアログ ノードを展開して、プロジェクトのダイアログ ボックスのリストを表示します。
メンバー変数を追加するダイアログ ボックスをダブルクリックして、ダイアログ エディターで開きます。
ダイアログ エディターに表示されたダイアログ ボックスで、メンバー変数を追加するコントロールを右クリックします。
ショートカット メニューで、 [変数の追加] を選択してメンバー変数の追加ウィザードを表示します。
注意
既定値が既にコントロール ID に提供されています。
適切なウィザード ボックスに情報を指定します。 詳細については、「ダイアログ ボックス コントロールおよび変数の型」を参照してください。
[完了] を選択して、プロジェクトに定義と実装コードを追加し、ウィザードを閉じます。
メンバー変数の追加ウィザードを使用して、クラス ビューからメンバー変数を追加するには:
クラス ビューでプロジェクト ノードを展開して、プロジェクト内のクラスを表示します。
変数を追加するクラスを右クリックします。
ショートカット メニューで、 [追加] 、 [変数の追加] の順に選択して、メンバー変数の追加ウィザードを表示します。
適切なウィザード ボックスに情報を指定します。 詳細については、「メンバー変数の追加ウィザード」を参照してください。
[完了] を選択して、プロジェクトに定義と実装コードを追加し、ウィザードを閉じます。
このセクションの内容
メンバー変数の追加ウィザード
このウィザードでは、ヘッダー ファイルにメンバー変数宣言を追加できます。 オプションによっては、.cpp ファイルにコードを追加できます。 このウィザードを使用してメンバー変数を追加すると、開発環境でそのコードを編集できます。
アクセス
メンバー変数へのアクセス権を設定します。 アクセス修飾子とは、メンバー変数に対して他のクラスが持つアクセス権を指定するキーワードです。 アクセス権の指定の詳細については、「メンバー アクセス コントロール」を参照してください。 メンバー変数のアクセス レベルは、既定では
public
に設定されます。変数の型
追加するメンバー変数の戻り値の型を設定します。
ダイアログ ボックス コントロールではないメンバー変数を追加する場合は、利用可能な型のリストから選択します。
戻り値の型については、「基本型」を参照してください。
char
double
float
int
long
short
unsigned char
unsigned int
unsigned long
ダイアログ ボックス コントロールのメンバー変数を追加する場合、このボックスにはコントロールまたは値に対して返されるオブジェクトの型が入力されます。 [コントロール] を選択した場合、 [変数の型] により [コントロール ID] ボックスで選択したコントロールの基底クラスが指定されます。 ダイアログ ボックス コントロールに値を保持することができ、 [値] を選択した場合、 [変数の型] によってコントロールで保持できる値の適切な型が指定されます。 詳細については、「ダイアログ ボックス コントロールおよび変数の型」を参照してください。
この値は、 [コントロール ID] の選択内容によって異なり、変更することができません。
変数名
追加するメンバー変数の名前を設定します。 メンバー変数は、通常、既定で提供されている識別用文字列
m_
で始まります。Control variable (コントロール変数)
メンバー変数が、データ交換とデータの検証をサポートしているダイアログ ボックス内のコントロールを管理することを示します。 詳細については、DoDataExchange に関するセクションを参照してください。 このオプションは、CDialog から派生したクラスに追加されたメンバー変数に対してのみ使用可能です。 [コントロール ID] と [コントロール型] オプションをアクティブ化するには、このボックスを選択します。
コントロール ID
追加するコントロール変数の ID を設定します。 メンバー変数を追加するコントロールの型の ID をリストから選択します。 このリストは、 [コントロール変数] ボックスが選択されている場合にのみアクティブとなり、さらにダイアログ ボックスに既に追加されているコントロールの ID に限定されます。 たとえば、標準的な [OK] ボタンの場合、コントロール ID は IDOK です。
オプション 説明 コントロール このオプションは、既定でコントロール型に設定されます。 このオプションでは、コントロールの状態やコンテンツ (リスト ボックス、コンボ ボックス、または編集ボックスで管理するように) ではなく、コントロール自体が管理されます。 [値] このオプションは、編集ボックスやチェック ボックスなど、値を保持したり状態を表示したりできるコントロール型で使用できます。 これはまた、範囲、コンテンツ、または状態の管理対象となるコントロール型でも利用できます。 詳細については、「ダイアログ ボックス コントロールおよび変数の型」を参照してください。 カテゴリ
変数の基となるのが、コントロールの種類とコントロール値のどちらであるかを指定します。
コントロール型
追加するコントロールの型を設定します。 このボックスは、変更できません。 たとえば、ボタンは BUTTON というコントロール型を持ち、コンボ ボックスは COMBOBOX というコントロール型を持ちます。 詳細については、「ダイアログ ボックス コントロールおよび変数の型」を参照してください。
最大文字数
[変数の型] が [CString] に設定されている場合にのみ使用できます。 コントロールで保持できる文字数の最大限度を示します。
最小値
変数の型が
BOOL
、int
、UINT
、long
、DWORD
、float
、double
、BYTE
、short
、COLECurrency、または CTime である場合にのみ使用できます。 スケールまたは日付の範囲に許容される最小値を示します。最大値
変数の型が
BOOL
、int
、UINT
、long
、DWORD
、float
、double
、BYTE
、short
、COLECurrency
、またはCTime
である場合にのみ使用できます。 スケールまたは日付の範囲に許容される最大値を示します。.h ファイル
ActiveX コントロール場合、そのメンバー変数にはラッパー クラスが必要です。 ヘッダー ファイルの名前を設定し、クラス宣言を追加します。
.cpp ファイル
ActiveX コントロール場合、そのメンバー変数にはラッパー クラスが必要です。 実装ファイルの名前を設定し、クラス定義を追加します。
コメント
メンバー変数のヘッダー ファイルにコメントを挿入します。
ダイアログ ボックス コントロールおよび変数の型
メンバー変数の追加ウィザードを使用すると、MFC で作成したダイアログ ボックス コントロールにメンバー変数を追加できます。 メンバー変数を追加するコントロールの種類によって、ダイアログ ボックスに表示されるオプションが決まります。
次の表は、MFC とダイアログ エディターでサポートされているすべてのダイアログ ボックス コントロール型をまとめたものです。 また、それらの使用可能な型と値も示されています。
Control | コントロール型 | コントロール変数の型 | 値変数の型 | 最小/最大値 (値の型のみ) |
---|---|---|---|---|
アニメーション コントロール | SysAnimate32 | CAnimateCtrl | なし、コントロールのみ | N/A |
Button | ボタン | CButton | なし、コントロールのみ | N/A |
チェック ボックス | チェック | CButton | BOOL |
最小値/最大値 |
コンボ ボックス | コンボ ボックス | CComboBox | CString | 最大文字数 |
日時指定コントロール | SysDateTimePick32 | CDateTimeCtrl | CTime | 最小値/最大値 |
エディット ボックス | 編集 | CEdit | CString 、int、UINT、long、DWORD、float、double、BYTE、short、BOOL、COleDateTime 、または COleCurrency |
最小値/最大値、一部は最大文字数をサポート |
ホット キー コントロール | msctls_hotkey32 | CHotKeyCtrl | なし、コントロールのみ | N/A |
リスト ボックス | リスト ボックス | CListBox | CString |
最大文字数 |
リスト コントロール | SysListView32 | CListCtrl | なし、コントロールのみ | N/A |
月間予定表コントロール | SysMonthCal32 | CMonthCalCtrl | CTime |
最小値/最大値 |
プログレス コントロール | msctls_progress32 | CProgressCtrl | なし、コントロールのみ | N/A |
リッチ エディット 2 コントロール | RichEdit20A | CRichEditCtrl | CString |
最大文字数 |
リッチ エディット コントロール | RICHEDIT | CRichEditCtrl |
CString |
最大文字数 |
スクロール バー (垂直または水平) | SCROLLBAR | CScrollBar | int |
最小値/最大値 |
Slider コントロール | msctls_trackbar32 | CSliderCtrl | int |
最小値/最大値 |
スピン コントロール | msctls_updown32 | CSpinButtonCtrl | なし、コントロールのみ | N/A |
タブ コントロール | SysTabControl32 | CTabCtrl | なし、コントロールのみ | N/A |
ツリー コントロール | SysTreeView32 | CTreeCtrl | なし、コントロールのみ | N/A |