2010-08-01 307 views
1

如何在Mac下的C中获取鼠标坐标?鼠标坐标

+0

哪些框架或库您使用? – 2010-08-01 12:28:58

回答

1

我不是任何完全只有C的实现,但在OSX(10.5+)的基础框架中有一个名为“HIGetMousePosition”的函数。你应该能够将它与你的C程序整合。

http://allancraig.net/index.php?option=com_content&view=article&id=137:getting-mouse-coordinates&catid=39:objective-c&Itemid=86显示了这个示例实现:

int main (int argc, const char * argv[]) 
{ 

NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; 

HIPoint point; 
HICoordinateSpace space = 2; 
HIGetMousePosition(space, NULL, &point); 

printf("%.2f %.2f", point.x, point.y); 

[pool drain]; 
return 0; 
} 
+0

你有一个额外的'在那里,混淆荧光笔和潜在的复制贴; – You 2010-08-01 12:48:26

+0

修复它,完全错过了,谢谢。 – Ashaman 2010-08-01 13:46:33

+0

你说它在基础框架中,但声明在CarbonEventsCore.h中,在HIToolbox.framework中,是Carbon.framework的一个子框架。我不认为这需要一个自动释放池。 – JWWalker 2010-08-01 17:44:40