テクニカル: ID 名および番号に関する規約

この ID の名前付けとリソース、コマンド、文字列、コントロール、および子ウィンドウは MFC 2.0 で使用される番号付け規則について説明します。

問題

MFC ID 名および番号に関する規約、次の要件を満たすためのものです。:

ID プリフィックスの名前付け規則

いくつかのカテゴリまたはアプリケーションの Id の種類です。MFC ID の名前付け規則に異なるプレフィックスを別のリソースの種類を定義します。

MFC では、プリフィックス"idr _"を使用して複数の種類のリソースに適用されるリソースの ID を参照します。たとえば、特定のフレーム ウィンドウで、同じの"idr _"値すべてを一度に、メニューのアクセラレータ、文字列、アイコン リソースを参照してくださいに使用します。

IDR _ 複数の種類のリソース (主にメニューでは、アクセラレータを使用)。
として ダイアログ テンプレート リソース (たとえば、 IDD_DIALOG1)。

通常

カーソル リソース。

IDI_

アイコン リソース。

IDB_

ビットマップ リソース。

IDS _

文字列リソース。


LoadStringに渡された ID を ids _ リソースの値を文字列には注意してください。文字列テーブル リソース グループ一緒に 16 の文字列を実際に実装する 1 つのセグメントに。

ダイアログ リソースでは、我々 の規則をに従ってください。:

IDOKIDCANCEL 標準のプッシュ ボタンの Id。
通常

その他ダイアログ コントロール。

通常」のプレフィックスは、カーソル場合も使用されます。いくつかのカーソルおよびダイアログのコントロールの数が多い、一般的なアプリケーションがあるのでこの名前付けの競合は通常は問題ではないです。

メニュー リソース内では、我々 の規則に従う:

IDM _ MFC コマンド アーキテクチャを使用しないメニュー項目。
ID _

MFC コマンド アーキテクチャを使用してメニュー項目コマンド。

MFC コマンド アーキテクチャ コマンドは、 ON_COMMANDコマンド ハンドラーする必要があり、 ON_UPDATE_COMMAND_UIハンドラーがあります。これらのコマンド ハンドラーが MFC コマンド アーキテクチャに従う場合は、ツールバー ボタン、またはダイアログ バー ボタン、メニュー項目にバインドされているかどうか彼らが正しく機能します。同じ id _ 値は、プログラムのメッセージ バーに表示されるメニュー プロンプト文字列も使用されます。アプリケーション内のメニュー項目のほとんどは、MFC コマンド規則に従ってください。すべての標準コマンド Id (たとえば、 ID_FILE_NEW) この規則に従う。

MFC を使用も、特殊な形式の文字列として「"idp _"(つまり、"ids _"の代わりに)。"Idp _"プリフィックスを持つ文字列は「プロンプト」は、メッセージ ボックスで使用される文字列です。"Idp _"文字列には、"%1"とプレース ホルダーとして「% 2」のプログラムによって決定された文字列を含めることができます。"Ids _"文字列はしない"idp _"文字列は通常ヘルプ トピックがあります。"Idp _"文字列がローカライズ"ids _"文字列は、ローカライズされないことがあります中には常にいます。

MFC ライブラリは、コントロール Id の特殊な形式として"idw _"プレフィックスをまた使用して (つまり、「通常」の代わりに)。これらの Id フレームワーク クラスによって、ビュー、分割などの子ウィンドウに割り当てられています。MFC 実装 Id「AFX_と」が付きます。

ID 番号規約の概要

次の有効な範囲の特定の種類の Id を一覧表示します。他の Windows の定義済み Id や MFC の既定の実装を衝突からあなたの Id を防ぐために規則だけがいくつかの制限の実装上の制限は。

未定義の Id 範囲外を行うをお勧めします。にもかかわらず、多くのこれらの範囲の下限値は 1 です (0 は使用されません)、慣例起動 Id の活用は 100 または 101。

プレフィックス リソースの種類 有効な範囲は
IDR _ 複数 1 - gt;0x6FFF(&G)
として ダイアログ テンプレート 1 - gt;0x6FFF(&G)
通常、IDI_、IDB_ カーソル、アイコン、ビットマップ 1 - gt;0x6FFF(&G)
IDS _、IDP _ 一般的な文字列 1 - gt;0x7FFF(&G)
ID _ コマンド 0x8000 - gt;0 xdfff まで(&G)
通常 コントロール 8 gt;0 xdfff まで(&G)

これらの範囲の制限の理由:

番号順テクニカル ノート|nbsp;カテゴリ別テクニカル ノート(&N)

Index