qt按鈕自帶長按檢測.但是並沒有對應的槽.
按鈕默認長按是關閉的.
界面上面設置是這樣的:
代碼設置如下:
ui->toolButton_exit->setAutoRepeat(true);
ui->toolButton_exit->setAutoRepeatDelay(1000);
ui->toolButton_exit->setAutoRepeatInterval(100);
然后自己建一個成員變量
int test = 0;
將按鈕單擊事件鏈接
connect(ui->toolButton_exit,&QToolButton::clicked,[&]{
test +=1;
if(test >3){
test = 0;
this->close();
}else {
return ;
}
});
或者從設計界面點擊過來實現跟lambda表達式里面一樣;當長按事件大於3*1000 也就是3s時.就會執行對應的邏輯了.