bool MainWindow::event(QEvent* event)
{
switch (event->type()) {
case QEvent::MouseButtonPress:
qDebug() << "\033[33m"<<qPrintable(QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss:zzz"))<< "按键按下";
break;
case QEvent::MouseButtonRelease:
qDebug() << "\033[32m"<<qPrintable(QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss:zzz"))<< "按键释放";
break;
}
}
可以发现无论是点击马上释放或是点击后一段时间释放按下与释放时成对出现的,单当快速连续点击后:
可以发现按下的事件会丢掉一次。原因是触发了双击事件。所以若做按键点击事件时若不区分双击事件时这样写
bool MainWindow::event(QEvent* event)
{
switch (event->type()) {
case QEvent::MouseButtonDblClick:
case QEvent::MouseButtonPress:
qDebug() << "\033[33m"<<qPrintable(QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss:zzz"))<< "按键按下";
break;
case QEvent::MouseButtonRelease:
qDebug() << "\033[32m"<<qPrintable(QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss:zzz"))<< "按键释放";
break;
}
}