Portál AbcLinuxu, 17. července 2025 07:17
rootx=236 rooty=187 winx=236 winy=187 modifs=0 window=20971915querypointer.c:
#include <X11/Xos.h> #include <X11/Xlib.h> #include <X11/Xutil.h> #include <X11/Xproto.h> #include <stdio.h> char *progname; pexit(str)char *str;{ fprintf(stderr,"%s: %s\n",progname,str); exit(1); } usage(){ pexit("\nusage:\n\ Get information about current position of the X pointer.\n\ -display <display>\n"); } Display *display; main(argc,argv)char **argv;{ Display *display; int screen,oldx = -99,oldy = -99,numscreens; int doroot = 0, jitter = 0, idletime = 5, usegrabmethod = 0, waitagain = 0, dovisible = 1, doevents = 1, onescreen = 0; Cursor *cursor; Window *realroot; Window root; char *displayname = 0; Window windowin,newroot; int rootx,rooty,winx,winy; unsigned int modifs; progname = *argv; argc--; while(argv++,argc-->0){ if(strcmp(*argv,"-display")==0 || strcmp(*argv,"-d")==0){ argc--,argv++; if(argc<0)usage(); displayname = *argv; }else usage(); } display = XOpenDisplay(displayname); if(display==0)pexit("could not open display"); screen = DefaultScreen(display); root = RootWindow(display,screen); XQueryPointer(display, root, &newroot, &windowin, &rootx, &rooty, &winx, &winy, &modifs); printf("rootx=%d rooty=%d winx=%d winy=%d modifs=%d window=%d\n", rootx, rooty, winx, winy, modifs, windowin); }
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.