0
Я пытаюсь получить мой (ый) значок курсора мыши в QPixmap.Qt Windows получить значок курсора мыши
После прочтения документации Qt и MSDN я придумал этот кусок кода:
Я не уверен о смешивании HCURSOR и HICON, но я видел некоторые примеры, когда они делают это.
QPixmap MouseCursor::getMouseCursorIconWin()
{
CURSORINFO ci;
ci.cbSize = sizeof(CURSORINFO);
if (!GetCursorInfo(&ci))
qDebug() << "GetCursorInfo fail";
QPixmap mouseCursorPixmap = QtWin::fromHICON(ci.hCursor);
qDebug() << mouseCursorPixmap.size();
return mouseCursorPixmap;
}
Однако мой размер mouseCursorPixmap всегда равен QSize (0,0). Что пошло не так?
Почему вы думаете, 'член hCursor' из' CURSORINFO' структуры ручка иконы? – mvidelgauz
Да, HCURSOR и HICON идентичны. Я понятия не имею, почему это не работает. Действительно ли 'ci.hCursor' содержит действительный дескриптор? Если это так, я полагаю, что проблема кроется в 'QtWin :: fromHICON', потому что я многократно использовал идентичный код для получения растрового изображения курсора мыши. –
В соответствии с этим ответом: http://stackoverflow.com/questions/10469538/winapi-get-mouse-cursor-icon Они используют HCURSOR в DrawIcon() – eKKiM