Цієї записці описується ID іменування та нумерації конвенцій, які використовуються для ресурсів, команди, рядків, елементи керування та дитина windows MFC 2.0.
Проблема
Іменування MFC ID та нумерація конвенцій призначені для відповідати таким вимогам:
Огляд ID префікс іменування
Є кілька категорій або види ідентифікатори в застосунку. MFC ID naming convention визначає різні префікси для різних ресурсів типів.
MFC використовує префікс "IDR_" для ресурсу ID, яка застосовується до декількох типів ресурсу. Наприклад, для даного рамки вікна, те ж значення "IDR_" використовується для позначення меню, прискорювач, рядок і значок ресурс все відразу.
| IDR_ | Кілька типів ресурсу (використовується для меню, прискорювачі в першу чергу). |
| IDD_ | Діалогове вікно шаблона ресурсів (наприклад, IDD_DIALOG1). |
| IDC_ | Для курсору ресурси. |
| IDI_ | Значок ресурси. |
| IDB_ | Для бітових ресурси. |
| IDS_ | Рядок ресурси. |
Зверніть увагу, що значення IDS_ для рядкового ресурсу ID, переданих до LoadString. Фактичної реалізації рядок таблиці ресурсів групи разом 16 рядків в один сегмент.
В рамках ДІАЛОГОВОМУ ресурсу ми дотримуємося конвенції:
| IDOK,IDCANCEL | За стандартну кнопка ідентифікатори. |
| IDC_ | Для інших елементів керування діалогове вікно. |
"IDC_" префікс використовується також для курсори. Цей конфлікт імен не є зазвичай проблема оскільки типове застосування буде мати кілька курсори і велика кількість діалоговому контролю.
У меню ресурсу ми дотримуємося конвенції:
| IDM_ | Для пунктів меню, не використовуючи MFC команда архітектури. |
| ID_ | Для команди меню елемент за допомогою MFC команда архітектура. |
Команди, які прямують архітектура командування MFC повинні мати обробника команда ON_COMMAND і можливо обробника ON_UPDATE_COMMAND_UI . Якщо ці обробники команда MFC команда архітектури, вони будуть працювати неправильно чи вони прив'язуються до елемента меню, кнопку панелі інструментів або кнопку панелі діалогове вікно. Ж ID_ також використовується для термінових рядок меню на рядок повідомлень програми відображається. Більшість з пунктів меню, у вашій програмі повинні слідувати MFC команда конвенції. Все, що стандартні команди ідентифікаторів (наприклад, ID_FILE_NEW) дотримуватися цієї угоди.
MFC також використовує "IDP_" як спеціалізовані форми рядків (тобто, замість того, щоб "IDS_"). Рядки з префіксом "IDP_" є "підказками,", тобто рядків, які використовуються в полях повідомлення. "IDP_" рядків може містити "% 1" і "% 2", як місце власників рядків визначається програмою. "IDP_" струн, як правило, мають розділи довідки, а не "IDS_" струн. "IDP_" струн завжди локалізована, а "IDS_" струн може або не може бути локалізована.
Бібліотека MFC також використовує префікс "IDW_" як спеціалізовані форми контролю ідентифікатори (тобто, замість того, щоб "IDC_"). Ці ідентифікатори за рамки класи зараховуються до дитини windows наприклад переглядів і антенні. Ідентифікатори реалізації MFC починаються з "AFX_".
Огляд ID нумерації конвенції
Далі перелічено дійсний діапазони для ідентифікаторів певних типів. Деякі з меж, технічної реалізації межі той час як інші просто конвенцій, щоб запобігти ідентифікаторів зіштовхуються з попередньо визначених ідентифікатори Windows або MFC за замовчуванням реалізація.
Ми настійно рекомендуємо, ви робите не визначені посвідчення за межами рекомендованих діапазонів. Хоча нижня межа, багато хто з цих діапазонів 1 (0 не використовується), загальні конвенції запускається практичне використання ідентифікаторів в 100 або 101.
| Префікс | Тип ресурсу | Неприпустимий діапазон |
| IDR_ | кілька | 1 - > 0x6FFF |
| IDD_ | діалогове вікно шаблони | 1 - > 0x6FFF |
| IDC_, IDI_, IDB_ | вказівники, піктограми, крапкові малюнки | 1 - > 0x6FFF |
| IDS_, IDP_ | загальні рядків | 1 - > 0x7FFF |
| ID_ | команди | 0x8000 - > 0xDFFF |
| IDC_ | елементи керування | 8 - > 0xDFFF |
Причини ці обмеження діапазону:
Технічні примітки за номером |nbsp; Технічні примітки за категоріями