|
我想使用XgrabKey来拦截某个键盘事件,比如:按 F9
现在发现程序运行报 BadAccess 的错,可能是系统中存在别的软件拦截过F9了??有办法知道是什么软件么?或者怎么才能正常的拦截 F9呢?
void
grab_keys (Display * display)
{
int i;
int min, max;
int screen;
unsigned int modifier = 0;
// modifier |= Mod2Mask; 使用这个则不报错
modifier = AnyModifier;
for (screen = 0; screen < ScreenCount (display); screen++)
{
// grab 'F9' of all screen
KeyCode F9;
F9 = XKeysymToKeycode (display, XStringToKeysym ("F9"));
XGrabKey (display, F9, modifier, RootWindow (display, screen),
True, GrabModeAsync, GrabModeAsync);
}
} |
|