Почему я не могу найти контрольный идентификатор в моем файле ресурсов в ATL? - PullRequest
1 голос
/ 03 ноября 2008

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

HWND controlOnFocus = ::GetFocus();
int controlID = ::GetDlgCtrlID(controlOnFocus);

Я получаю согласованные идентификаторы, но не могу найти их в файле ресурсов! Могу ли я рассчитывать на идентификаторы, которые я получаю или что?

Любая помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 03 ноября 2008

Ваш фрагмент кода получает идентификатор элемента управления из любого окна, в котором находится текущий фокус. Скорее всего, ваше приложение будет содержать множество окон, которые вы сами не создали, например общие диалоговые окна, и идентификаторы для них не будут присутствовать в вашем файле ресурсов. Кроме того, не все окна имеют полезные идентификаторы управления; Например, статические текстовые элементы управления обычно имеют ID_STATIC (-1?).

...