我有以下代码从现有的 CGImage 设置光标:
NSPoint hotspot = ...;
CGImageRef cgimg = ...;
if(!cgimg)
return nullptr;
NSImage* nsimg = [[NSImage alloc] initWithCGImage:cgimg size:NSZeroSize];
if(!nsimg)
return nullptr;
NSCursor* pcur = [[NSCursor alloc] initWithImage: nsimg hotSpot: hotspot];
if(!pcur)
return nullptr;
[nsimg release];
// later in the code I set it as current:
[pcur set];
我正在使用与正常图像(框下方的那个)完全相同的 CGImageRef 。
知道可能是什么问题吗?
同一应用程序中的库存光标呈现正常。如果重要的话,那就是在 OS X “El Capitan”上。