Ресурс курсора не загружается должным образом, кроме встроенных курсоров VS - PullRequest
0 голосов
/ 25 марта 2019

Когда я устанавливаю курсор для своего окна, используя встроенные типы курсоров, такие как IDC_HAND или IDC_ARROW, он отлично работает, например:

SetCursor(LoadCursor(NULL, MAKEINTRESOURCE(IDC_HAND)));

но при импорте ресурса курсора (либо загруженного файла курсора, либо сделанного на заказ, либо просто путем создания нового ресурса курсора с помощью VS) курсор не изменится, например:

SetCursor(LoadCursor(NULL, MAKEINTRESOURCE(IDI_ICON1)));

OR

SetCursor(LoadCursor(NULL, MAKEINTRESOURCE(IDC_CURSOR1)));

resource.h

#define IDI_ICON1                       101
#define IDC_CURSOR1                     102

resource.rc

IDI_ICON1               ICON                    "custom_cursor.cur"
IDC_CURSOR1             CURSOR                  "cursor1.cur"

Как вы видите по какой-то причине мой пользовательский курсор сохраняется как "ICON" в resource.rc

IDC_CURSOR1 сделан из инструмента ресурсов VS, но ни один из них не работает, кроме встроенных курсоров.

Когда курсор запуска программы не изменяется, вместо него отображаются черные стрелки, но если использовать для ex IDC_ARROW или IDC_HAND, тогда он работает.

что может быть причиной того, что вы не сможете использовать пользовательские курсоры.

кстати. Я могу установить пользовательский курсор в настройках мыши Windows, но он не работает в VS.

EDIT:

Я только что узнал, что загрузка курсора из файла работает. например:

LoadCursorFromFile(L"custom_cursor.cur");

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...