2011-01-10 10 views
9

Mac OS X için çok sayıda hızlı hareket ve fare imlecinin etrafında dolaşan bir oyun kurmaya çalışıyorum. Kullanıcı pencereli modda oynamak istiyorsa, yanlışlıkla programın ısısı programlarını yanlışlıkla değiştirmek önlemek için imleci pencerenin içine kilitlemek istiyorum (kullanıcı program değiştirirse ya da duraklatma menüsü.)İmleci, Mac OS X'teki bir pencerenin içine nasıl kilitleyebilirim?

Windows'ta bu, ClipCursor() ile kolayca yapılabilir. Mac OS X'te bir eşdeğer bulamıyorum.

+0

çok benzer bir soru bak [SI 4.642.867] (http://stackoverflow.com/questions/4642867/how-can-i-lock-the-cursor-to-the-inside-of- Linux için aynı soruyu soran bir-pencere-on-linux). –

cevap

7

CGWarpMouseCursorPosition, CGAssociateMouseAndMouseCursorPosition ve CGGetLastMouseDelta (ApplicationServices'ın parçası) bölümüne bakın.

http://developer.apple.com/library/mac/#documentation/GraphicsImaging/Reference/Quartz_Services_Ref/Reference/reference.html

+0

Bu gerçekten, gerçekten umut verici görünüyor olsa da, bazı korkunç imleç yenileme oranı sorunları yaşıyorum. SetMouseCoalescingEnabled yararsızdır. Bu konuda daha fazla çalışacağım ve ne olup bittiğimi anlarım, göndereceğim, ama şu anda bu işlevler ile kullanılabilir bir şey bulamadım. – ZorbaTHut

+0

Bunu hiç anladın mı? Mac üzerinde pencereli modda oyunlar oynarken aynı sorunu yaşıyorsanız. – jtanman