Я устанавливаю пользовательский курсор на свое приложение из файла значков, но точка щелчка находится на неправильных координатах. Я устанавливаю курсор с помощью
SetClassLongPtr(hwnd, GCL_HCURSOR, reinterpret_cast<LONG_PTR>cursor)
где курсор является результатом;
LoadImage(
NULL,
"some_path/cursor.ico",
IMAGE_ICON, //also tried IMAGE_CURSOR
0, //width. 0 uses the width of the file provided
0, //height. 0 uses the height of the file provided
LR_LOADFROMFILE
);
Курсор загружается нормально, но его щелчки исходят из нижнего левого угла изображения курсора, а не из верхнего левого угла.
В статье Википедии о файлах .ico говорится, что горячие точки указываются только для файлов .cur, но не для .ico.
Редактировать: Уточненный вопрос
ref: LoadImage () и SetClassLongPtr () в msdn.