From bd704c0bada1e26f35a0ce5b462e44b6b88f3345 Mon Sep 17 00:00:00 2001 From: tianduanrui <2407223896@qq.com> Date: Tue, 24 Sep 2019 13:09:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=87=86=E5=A4=87=E6=94=AF=E6=8C=81=E9=BC=A0?= =?UTF-8?q?=E6=A0=87=E9=94=81=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/exquisite/qqtbodymouselocker.cpp | 8 ++++---- src/exquisite/qqtbodymouselocker.h | 3 ++- test/testmouselocker11/mainwindow.cpp | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/exquisite/qqtbodymouselocker.cpp b/src/exquisite/qqtbodymouselocker.cpp index 49af0ce1..5a0e4281 100644 --- a/src/exquisite/qqtbodymouselocker.cpp +++ b/src/exquisite/qqtbodymouselocker.cpp @@ -97,7 +97,7 @@ bool QQtBodyMouseLocker::eventFilter ( QObject* watched, QEvent* event ) return false; } #endif -#if 1 +#if 0 //用于解决启动时获取鼠标 //用于解决窗口从unactive到active状态切换的时候获取鼠标 case QEvent::WindowActivate: @@ -112,7 +112,7 @@ bool QQtBodyMouseLocker::eventFilter ( QObject* watched, QEvent* event ) return false; } #endif -#if 1 +#if 0 //窗口不活动以后关闭捕获鼠标 省电 case QEvent::WindowDeactivate: { @@ -128,9 +128,9 @@ bool QQtBodyMouseLocker::eventFilter ( QObject* watched, QEvent* event ) return false; } #endif -#if 1 +#if 0 //点击窗口时捕获鼠标 - //这一个还是有用的,用户设置了多个窗口锁定鼠标的时候,有这个才能实时响应鼠标点击动作进行捕获。在tracking为false的时候。 + //这一个还是有用的,用户设置了多个窗口锁定鼠标的时候,有这个才能实时响应鼠标点击动作进行捕获。尤其在tracking为false的时候。 case QEvent::MouseButtonPress: { QWidget* target = qobject_cast ( watched ); diff --git a/src/exquisite/qqtbodymouselocker.h b/src/exquisite/qqtbodymouselocker.h index f95674c2..0a7b1ad1 100644 --- a/src/exquisite/qqtbodymouselocker.h +++ b/src/exquisite/qqtbodymouselocker.h @@ -26,7 +26,7 @@ * 允许使用这一个句柄为多个窗口安装,各自独立工作,互不干扰。 * setMouseTracking(true) 鼠标划过就能捕获 * setMouseTracking(false) 鼠标点击才能捕获 - * 无论mouseTracking如何,在窗口从非active到active的时候,最近一次捕获鼠标的窗口,会立即捕获鼠标。 + * 在窗口从非active到active的时候,不会立即捕获鼠标。 * * 功能约束: * 用户必须手动停止capture,内部也有帮助停止,但是还是要依赖手动停止, @@ -53,6 +53,7 @@ public: QQtBodyMouseLocker ( QObject* parent = 0 ); virtual ~QQtBodyMouseLocker(); +public: //这里开启、停止锁定功能。默认已经开启。 void startCapture(); void stopCapture(); diff --git a/test/testmouselocker11/mainwindow.cpp b/test/testmouselocker11/mainwindow.cpp index 3a46cb8a..44125c05 100644 --- a/test/testmouselocker11/mainwindow.cpp +++ b/test/testmouselocker11/mainwindow.cpp @@ -35,7 +35,7 @@ MainWindow::MainWindow ( QWidget* parent ) : ui->widget->setMouseTracking ( true ); //ui->widget_2->setMouseTracking ( true ); - this->installEventFilter ( this ); + //this->installEventFilter ( this ); } MainWindow::~MainWindow()