我能够使用x11的_NET_CLIENT_LIST
Atom属性获得所有窗口的列表。使用它,我选择了自己感兴趣的特定窗口,例如gedit窗口,并使用XSetInputFocus
,它将完美地将键盘输入和控件设置为gedit窗口。
现在我的问题是,X11中是否有类似的功能,以便我们可以将鼠标焦点设置到特定窗口,因此任何鼠标单击或选择都将仅局限于该特定窗口。
我尝试了XGrabPointer
,但没有成功。它只会冻结鼠标,并且不会在屏幕上显示其他鼠标输入(例如单击鼠标;我只能看到鼠标指针,也可以移动它,但是它不执行任何单击操作)。
答案 0 :(得分:0)
您应该能够轮询鼠标事件,并且如果用户尝试移出矩形,则应该能够重新定位它。如果您不将指针放在其他窗口之外,那么我认为您不能阻止鼠标单击到达它们,但这是可能的。