没有Cocoa的OSX中的鼠标/键盘输入

时间:2011-03-22 21:08:39

标签: c++ macos mouseevent keyboard-events

我使用CGL / OpenGL在C ++中编写应用程序,需要键盘/鼠标输入。如果可能的话,我试图避免使用Objective-C和Cocoa。我知道可以使用Carbon捕获输入,但似乎Carbon正逐渐被逐步淘汰,而且目前尚不清楚它是否与64位应用程序配合良好。有没有人知道OSX中是否有任何其他替代方法可以使用C ++进行鼠标/键盘输入,而不会达到非常低的水平(例如I / O工具包)?任何代码片段都是为了让我开始?

谢谢 -

2 个答案:

答案 0 :(得分:1)

Quartz event taps可能会做你想要的。在不知道你为什么要避免使用Cocoa事件系统的情况下,很难知道哪种技术最适合你想要做的事情。

答案 1 :(得分:0)

Gaffer on Games写了一篇文章,用CGL和最小的事件循环来做你想要的,上下文和曲面创建(尽管它有点过时,对于El Capitan你需要CGLSetFullScreenOnDisplay())

http://gafferongames.com/2009/01/19/opengl-on-macosx/

它使用InstallApplicationEventHandler,这是这里提到的两个键盘API之一:

Keyboard input on OSX