C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 34 - Идентификаторы элементов управления / Диалоговые окна / Visual C++

Шаг 34 - Идентификаторы элементов управления

Каждый элемент управления, помещенный на диалоговую панель имеет идентификатор. Посмотреть его можно через свойства элемента управления.

34_1.gif (7135 b)

Идентификатор начинается с приставки IDC_. Это для того, чтобы различать идентификаторы. Допустимые значения - 8 - 0xDFFF. VC++ автоматически присваивает значения и прописывает идентификаторы в файле resource.h.

#define IDC_BUTTON1   1003
#define IDC_EDIT1     1004
#define IDC_PROGRESS1 1005

Делает он это по порядку. Хотя порядок в результате всяких манипуляций может сбиться. Вы сами можете попробовать. Удалите описание IDC_EDIT1. И добавьте еще элементов. Вам кстати никто не мешает самому расставить необходимые цифровые значения по порядку. Это может быть очень полезно кстати. Но тут есть один интересный эффект. Вот есть описание ресурсов:

#define IDC_BUTTON1   1003
#define IDC_PROGRESS1 1004
#define IDC_EDIT2     1005
#define IDC_LIST1     1007
#define ID_TEST_TEST  32771

Расставляем по порядку:

#define IDC_PROGRESS1 1004
#define IDC_EDIT2     1005
#define IDC_LIST1     1006

Добавляем еще один:

#define IDC_EDIT2      1005
#define IDC_LIST1      1006
#define IDC_SCROLLBAR1 1008

Смотрите, добавлен не 7, а 8. То есть в VC++ где-то хранится число, относительно которого отсчитывается новый идентификатор. И данное число даже ни где-то храниться, а прямо в описании ресурсов. Под именем _APS_NEXT_CONTROL_VALUE. В самом низу файла resource.h:

// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_3D_CONTROLS                1
#define _APS_NEXT_RESOURCE_VALUE        131
#define _APS_NEXT_COMMAND_VALUE         32772
#define _APS_NEXT_CONTROL_VALUE         1012
#define _APS_NEXT_SYMED_VALUE           108
#endif
#endif

| |
Автор Каев Артем.
[AD]