在winapi的ClipCursor()。我可以在x11或不同的库中使用类似的东西吗?

时间:2014-11-29 13:01:39

标签: linux x11

ClipCursor()在winapi中。我可以在x11或不同的库中使用类似的东西吗?我正在使用SFML 2.0创建一个窗口,我需要限制鼠标到窗口区域。我怎么能在linux中做到这一点?

当我将同一个项目编译到windows时,我只需使用

HWND h = window.getSystemHandle(); //window is SFML sf::RenderWindowObject.getSystemHandle() returns handle
RECT r;
GetWindowRect(h,&r);
ClipCursor( &r );

但在linux中,没有winapi ....也许有人知道如何在x11中有效地做到这一点?

1 个答案:

答案 0 :(得分:1)

您正在寻找XGrabPointer。刚刚测试过:

XGrabPointer(display, window, True, 0,
             GrabModeAsync, GrabModeAsync,
             window, None, CurrentTime);

......它就像一个魅力!