Je définis un curseur personnalisé sur mon application à partir d'un fichier d'icône, mais le point de clic est mal coordonné. Je règle le curseur avecComment définir les coordonnées de point d'accès sur un curseur Windows généré à partir d'un fichier d'icône?
SetClassLongPtr(hwnd, GCL_HCURSOR, reinterpret_cast<LONG_PTR>cursor)
où le curseur est le résultat de;
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
);
Le curseur charges fines, mais ses clics viennent du coin inférieur gauche de l'image du curseur, plutôt que de haut à gauche.
Le wikipedia article on .ico files indique que les zones sensibles sont uniquement spécifiées sur les fichiers .cur, pas .ico.
Edit: question Clarifiée
ref: LoadImage() et SetClassLongPtr() sur msdn.
Création d'un fichier .cur du Ico (ou plutôt, le même bitmap l'Ico a été créé à partir) et le chargement qui résout le problème. Je préférerais ne pas avoir à lancer une autre application pour faire la conversion si. Le fichier ico fonctionne comme un curseur, juste avec les mauvaises coordonnées. Il y a sûrement un moyen de régler cela. – RJFalconer