如何从后台运行的应用程序中获取鼠标的位置(因此它没有焦点)?我不想从所有其他应用程序中抓取鼠标,我只想知道它被按下的位置,因为我希望它能够对某个位置按下鼠标做出反应,无论当前哪个应用程序处于活动状态并且处于焦点位置?
我尝试过像这样创建一个QWidget:
#ifndef MOUSECLICK_H
#define MOUSECLICK_H
#include "QWidget"
#include <QMouseEvent>
#include <QDebug>
class mouseClick : public QWidget
{
void mousePressEvent(QMouseEvent* event)
{
QPoint position = event->pos();
qDebug() << position.x();
printf("%d %d,positon.x,position.y");
}
};
#endif // MOUSECLICK_H
然后我刚从main使用了它的show()函数,但是一旦另一个应用程序变为活动状态并且处于焦点状态,它就不会响应。
如果它有所作为,那就是Symbian(Belle)。
我认为事件过滤器可能是答案,但我不知道如何配置它以在焦点窗口之前拦截事件,我不知道安装它的对象是什么?