Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > Идентификаторы для массива CEdit'ов?


Автор: d2e8k 29.4.2008, 15:10
Здравствуйте!
При создании контрола требуется указание его идентификатора. А если массив контролов создавать динамически, то как определить какие ID им присваивать?

pEdit [i] = new CEDit ();
pEdit [i]->Create (ES_MULTILINE | WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER | WS_EX_CLIENTEDGE, rect, this, ID);  Какое значение задавать переменной ID?

Автор: voov 29.4.2008, 15:39
Идентификотор ресурса это число. Посмотри файлик Resource.h в твоем проекте, найди наибольший идентификатор. Попробуй передавать вместо ID числа больше наибольшего идентификатора.

Автор: d2e8k 30.4.2008, 09:46
Можно, конечно, так. Я смотрю, от 100 до 140 - идут ID диалоговых окон, от 1000 до 1024 (не подряд) мои кнопки и CEDIT'ы.  У них нет ограничения на диапазон ID? 

Автор: voov 30.4.2008, 10:21
Про ограничения не знаю, возможно эти значения ограничены размером какого-то типа данных. Я бы исходил из этого. Тип unsigned short ограничен 0 to 65,535. 
Думаю если начать с 5000, проблем возникнуть не должно.

Автор: d2e8k 30.4.2008, 11:36
спасибо... не ругается smile...

Автор: Earnest 5.5.2008, 12:27
Идентификаторы контролов в диалоге могут быть какими угодно и совпадать с чем угодно, кроме своих братьев (т.е. детей этого же диалога). Вот и все ограничения.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)