Как получить отображаемые размеры курсора мыши в программе на Windows 10 - PullRequest
0 голосов
/ 01 мая 2020

Мне нужно знать отображаемый размер курсора мыши в моей программе C ++ Windows 10.

При Windows 10 я делаю указатель больше, чтобы отобразить, скажем, в 5 раз больше, чем оригинал. (В настройках курсора и указателя). enter image description here

Затем в моей программе на C ++ / MF C я попробовал следующее:

int nXCursor = ::GetSystemMetrics(SM_CXCURSOR);
int nYCursor = ::GetSystemMetrics(SM_CYCURSOR);

или

int nXIcon = ::GetSystemMetrics(SM_CXICON);

или

HICON ico = (HICON)GetCursor();
SIZE res = { 0 };
if (ico)
{
   ICONINFO info = { 0 };
   if (::GetIconInfo(ico, &info) != 0)
   {
      BITMAP bmpinfo = { 0 };
      if (::GetObject(info.hbmMask, sizeof(BITMAP), &bmpinfo) != 0)
      {
         res.cx = bmpinfo.bmWidth;
         res.cy = bmpinfo.bmHeight;
      }

      ::DeleteObject(info.hbmColor);
      ::DeleteObject(info.hbmMask);
   }
}

Все они возвращаются с 32, что является оригиналом.

Кто-нибудь знает, как получить отображаемый увеличенный размер курсора?

...