Здравствуйте, ms, Вы писали:
ms>Не возможно загрузить в CDialog таблицу акселераторов!
Что значит невозможно???
HOWTO: Using Accelerator Keys Within a Modal Dialog Box
Здравствуйте, Willi, Вы писали:
W>Здравствуйте, ms, Вы писали:
ms>>Не возможно загрузить в CDialog таблицу акселераторов!
W>Что значит невозможно???
W>HOWTO: Using Accelerator Keys Within a Modal Dialog Box
Дело в том, что m_hAccelTable = LoadAccelerators(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_ACCELERATOR1));
А не работает потому, что MAKEINTRESOURCE(IDR_ACCELERATOR1) возвращает пустую строку. Поэтому и не возможно загрузить!
Здравствуйте, ms, Вы писали:
AfxGetResourceHandle?
А вообще надо что-то править в консерватории, ибо все прекрасно работает.
Здравствуйте, Patalog, Вы писали:
P>Здравствуйте, ms, Вы писали:
P>AfxGetResourceHandle?
P>А вообще надо что-то править в консерватории, ибо все прекрасно работает.
->> MAKEINTRESOURCE(IDR_ACCELERATOR1);
Вот этот макрос у меня почему-то не работает, возвращает пустую строку!
IDR_ACCELERATOR1 — это значение есть, а всё-равно пустая.
Здравствуйте, Patalog, Вы писали:
P>Здравствуйте, ms, Вы писали:
P>AfxGetResourceHandle?
P>А вообще надо что-то править в консерватории, ибо все прекрасно работает.
Создал новый проект — действительно всё заработало!
Лады! Спасибо, что отозвались!
Здравствуйте, ms, Вы писали:
[]
->>> MAKEINTRESOURCE(IDR_ACCELERATOR1);
ms>Вот этот макрос у меня почему-то не работает, возвращает пустую строку!
ms>IDR_ACCELERATOR1 — это значение есть, а всё-равно пустая.
Хм, а с чего ты взял что она пустая?
#define MAKEINTRESOURCEA(i) (LPSTR)((ULONG_PTR)((WORD)(i)))
, т.е. сей макрос езть протое приведение int к char*. И "не работать" он никак не может. Ежели у тебя не загружается ресурс, то проблема никак не в макросе.
Посмотри в отладчике область памяти по етому адресу.