Мне нужно извлечь изображение курсора, чтобы использовать его в моем приложении Swing (Java).
Во-первых, я нашел аналогичный вопрос , измененный фрагмент кода из ответа и получил это приложение-песочницу .
Вскоре он получает изображение курсора через JNA и WinAPI, затем показывает это изображение в JFrame и устанавливает собственный курсор для этого кадра.
В большинстве случаев случаях этот код работает корректно и подходит для моих задач. Но затем я обнаружил, что , когда пользователь изменяет размер или цвет курсора (Windows 10 функция ), программа извлекает недопустимое изображение курсора, которое не соответствует исходному курсору ни по цвету, ни по по размеру.
Когда у пользователя стандартный курсор:
When the user has e.g. pink cursor then bigger than standard one:
After this situation, I decided to do the same sandbox application, but via C++ and WinAPI. I used answers for this вопрос , но решались только проблемы с цветом.
I think the main bottleneck is that GetSystemMetrics
function returns default cursor size (32x32) and it doesn't change after the cursor's size changing. I found some proves for this здесь , но я не уверен.
Итак, мой вопрос:
Как я могу получить реальный размер курсора?
Заранее большое спасибо!