Что означает аббревиатура IDC? - PullRequest
10 голосов
/ 11 января 2012

Кто-нибудь знает значение аббревиатуры IDC, как оно используется при программировании окон?

Например, в контексте приложения CDialog:

void CMyDialog::DoDataExchange(CDataExchange* pDX)
{
    CDialog::DoDataExchange(pDX);
    DDX_Control(pDX, IDC_STATIC_FRAME, m_StaticFrame);
}

Это обычноИдентификатор не указанного в дальнейшем элемента управления (ID Control), так как диалог будет иметь префикс IDD (ID Dialog)?

Ответы [ 3 ]

27 голосов
/ 11 января 2012

Как правило, это идентификатор не указанного далее элемента управления (ID Control), поскольку диалог будет иметь префикс IDD (ID Dialog)?

Да, это точно правильно.

По соглашению сценарии ресурсов Win32 используют специальные префиксы для определения типа идентификатора .
Частичный список выглядит примерно так:

  • IDA = Ресурс таблицы акселераторов
  • IDB = Растровый ресурс
  • IDC = идентификатор команды
  • IDD = Ресурс диалогового окна
  • IDI = Значок ресурса
  • IDM = идентификатор команды меню
  • IDR = Несколько типов ресурсов, возможно, общие для всего приложения или окна
  • IDS = строковый ресурс
  • ID = Неизвестный или пользовательский ресурс

Иногда вы увидите IDC, используемый для курсоров, а не для идентификаторов команд. Трудно сказать, не глядя на использование, так ли это.

Но учтите, что их использование не является обязательным. Это ничего не значит для компилятора или компьютера, оно предназначено только для напоминания программисту о том, к чему относится идентификатор.

3 голосов
/ 11 января 2012

«Как и любой элемент управления Windows, кнопка распознается ее IDentifier. Поскольку кнопка является элементом управления, по соглашению имя ее идентификатора начинается с IDC (C обозначает Control)». - http://www.functionx.com/visualc/controls/button.htm

0 голосов
/ 30 января 2014
...