From 966b235405a636666a59a09ddf15fe0f28a80a2a Mon Sep 17 00:00:00 2001 From: Bai Date: Sun, 28 Nov 2021 18:33:51 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8C=89=E9=94=AE=E7=BB=84=E5=90=88=E6=B5=8B?= =?UTF-8?q?=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- deviceservice.cpp | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/deviceservice.cpp b/deviceservice.cpp index 5e7ad0e..45ae392 100644 --- a/deviceservice.cpp +++ b/deviceservice.cpp @@ -100,6 +100,13 @@ quint8 DeviceService::keyDetection() return key.flag; #else + //判定上次有行为,且上次行为产生时间间隔大于组合行为最长时间间隔,说明行为结束(不在判定组合行为),发送行为信号,并清空key.flag + if(key.flag != None && lastFlagTime.msecsTo(QTime::currentTime()) >= DblClick_Difftime) + { + emit keyWorked(key.flag); + key.flag = None; + } + KeyFlag flag = None; //清空按键标志(行为) //获取当前按键状态 @@ -123,19 +130,19 @@ quint8 DeviceService::keyDetection() } //判定组合行为 -// if(flag != None) -// { -// if(flag == Click) -// { -// if(key.flag == Click && (lastFlagTime.msecsTo(QTime::currentTime())) >= DblClick_Difftime) -// { -// flag = Dbl_Click; -// }else if(key.flag == Dbl_Click && (lastFlagTime.msecsTo(QTime::currentTime())) >= DblClick_Difftime) -// { -// flag = Tri_Click; -// } -// } -// } + if(flag != None) + { + if(flag == Click) + { + if(key.flag == Click) + { + flag = Dbl_Click; + }else if(key.flag == Dbl_Click) + { + flag = Tri_Click; + } + } + } //记录上一行为及时间 if(flag != key.flag)