2013-04-23 256 views
0

我查看了一些文档,但无法找到一个很好的描述如何获得光标的位置(从左上角0,0像素)在窗口点击。XY坐标光标点击X11

任何帮助表示赞赏:d

回答

1

下面是报告点击鼠标时,其中一个最小的方案。它只是拾取Button Press事件,其中包含鼠标指针在窗口中的x,y(左上角为0,0)位置。

#include <stdio.h> 
#include <X11/Xlib.h> 

int main(int argc, char**argv) 
{ 
    Display *display = XOpenDisplay(NULL); 

    Window window = XCreateSimpleWindow(
     display, RootWindow(display,0), 0, 0, 
     600, 600, 1, BlackPixel(display, 0), 
     WhitePixel(display, 0)); 

    XMapWindow(display, window); 

    XSelectInput(display, window, ButtonPressMask); 

    XEvent event; 
    while (1) 
    { 
     XNextEvent(display, &event); 
     switch (event.type) { 
     case ButtonPress: 
      printf("Clicked at %d,%d\n", event.xbutton.x, event.xbutton.y); 
      break; 
     } 
    } 

    return 0; 
} 
+0

谢谢,正是我所需要的:D – T3CHN0CR4T 2013-04-24 23:33:53