7
A
回答
4
您可以使用XQueryPointer()
来获取鼠标位置。然后使用XQueryTree()
获取窗口列表。 XQueryTree()
以适当的z顺序返回窗口列表,以便您可以遍历所有窗口,直到找到其边界框位于指针下方的窗口,XGetWindowAttributes()
将为您提供找出边界框所需的所有内容。我不确定你会怎样处理窗户。
我有几年没有使用X11,所以这可能是一个相当笨拙的方法,但它应该工作。我也没有O'Reilly X11书籍,如果你打算使用低级别的X11作品,那么你就需要亲自阅读其中的一本书;我认为整个系列在这些日子里可以免费上网。
3
十多年来我还没有编程X11,所以请原谅我,如果我得到这个错误。
我相信你可以在你的窗户上注册鼠标移动事件。如果通过将窗口句柄存储在某个变量或其他变量中来处理此类事件,然后处理该事件以使其不会渗透到树中,那么当您想要识别该窗口时,您只需查询该变量即可。
但是,这只会在鼠标悬停在窗口上时注册了合适的事件处理程序,因此您不会了解属于其他应用程序的窗口 - 除非有办法注册其他人的事件这可能是可能的窗户。
与其他答案相比,您不必遍历整棵树。缺点是你需要处理很多鼠标移动事件,并且可能无法找到其他人的窗户。
我相信也可能有鼠标输入和鼠标离开事件,这会减少所需的处理量。
相关问题
- 1. 获取鼠标在窗口中的相对位置x11
- 2. SAPUI5:获取存在于当前窗口
- 3. 通过光标/光标位置获取当前语句
- 4. c# - 获取当前窗口标题
- 5. 如何获取浏览器窗口的X11窗口ID
- 6. 如何在Mac OS X中获取相对于窗口的光标位置?
- 7. 在X11中,如何在创建窗口标题之前设置窗口标题?
- 8. 如何获取窗口位置并更新到其他窗口?
- 9. 如何在滑动窗口中获取当前窗口时间?
- 10. Perl:使用X11获取窗口的几何形状WindowID
- 11. 获取当前鼠标光标类型
- 12. 如何在C#中获取当前的鼠标光标坐标?
- 13. 使用X11的窗口ID
- 14. 从GtkWidget获取X11窗口句柄
- 15. 如何不断获取当前的前景窗口?
- 16. 如果光标位于元素之外时如何获取应用mousdown光标?
- 17. 获取webrowser控件中当前光标位置的链接ID
- 18. 如何在java中使用windows API获取当前的鼠标光标类型?
- 19. 如何获取当前窗口的引用?
- 20. 获取当前窗口顶部的位置
- 21. 如何获取当前应用程序/表单的窗口标题?
- 22. 在Word中获取当前光标位置(VSTO)
- 23. 如何获取并设置WPF文本框的当前光标位置
- 24. 如何以像素为单位获取当前小部件的光标大小
- 25. 从Selenium webdriver的当前窗口获取窗口句柄(IntPtr)GUID
- 26. 如何获取窗口的位置?
- 27. 使用窗口句柄获取当前活动窗口的路径
- 28. 获取当前窗口位置相对于文档主体的顶部
- 29. 如何打开当前窗口(上)?
- 30. 如何获取用户当前位置
例如这里:http://h30097.www3.hp.com/docs/base_doc/DOCUMENTATION/V51B_ACRO_SUP/XWINSYS.PDF – 2010-12-23 07:55:53