C++ Qt按钮按下增量

C++ Qt按钮按下增量,c++,qt,increment,qpushbutton,C++,Qt,Increment,Qpushbutton,我希望有人能帮助我,我有点问题。我有一个按钮,我想增加一个值,只要按住或按下它 void MainWindow::on_pushButton_4_pressed() { //sLens->write("4"); } 应该增加的数字在11-66之间,但是最大的问题之一是,当我按下按钮时,它会增加一次,直到我放开为止,然后需要再次单击它以增加1。有没有一种方法,如果我按下按钮,它仍然会不断增加 多谢各位 QPushButton继承自QAbstractButtonQAbstractB

我希望有人能帮助我,我有点问题。我有一个按钮,我想增加一个值,只要按住或按下它

void MainWindow::on_pushButton_4_pressed()
{
     //sLens->write("4");
}
应该增加的数字在11-66之间,但是最大的问题之一是,当我按下按钮时,它会增加一次,直到我放开为止,然后需要再次单击它以增加1。有没有一种方法,如果我按下按钮,它仍然会不断增加


多谢各位

QPushButton
继承自
QAbstractButton
QAbstractButton
有一个名为
setAutoRepeat(bool)
的方法,因此通过在主窗口的构造函数中执行
button->setAutoRepeat(true)
,它应该可以工作。

QPushButton
继承自
QAbstractButton
QAbstractButton
有一个名为
setAutoRepeat(bool)
的方法,因此通过在主窗口的构造函数中执行
button->setAutoRepeat(true)
应该可以工作。

不确定详细信息,但您可能需要一个循环
while(button.isStillPressed()){increment();sleep_for_some _ns()}
我厌倦了循环,但这只是导致程序崩溃。您需要确定值的递增速度,并使用计时器启动和停止。我看不到比创建QPushButton的子类并在和mouseReleaseEvent中处理计时器的启动和停止更简单的方法。不确定详细信息,但您可能需要一个循环
while(button.isStillPressed()){increment();sleep_for_some_ns();}
我厌倦了循环,但这只是导致程序崩溃。您需要确定值的递增速度,并使用计时器启动和停止。我看不到比创建QPushButton的子类并在和mouseReleaseEvent中处理计时器的启动和停止更简单的方法到主构造函数,但它似乎根本不起作用。@VijayYadav然后请说明您尝试了什么,并解释“似乎根本不起作用”的确切含义。您好,我明白了,我使用了这个示例。您好,我尝试添加
按钮\u 4->setAutoRepeat(true)到主构造函数,但它似乎根本不起作用。@VijayYadav然后请说明您尝试了什么,并解释“似乎根本不起作用”的确切含义。嗨,我明白了,我使用了这个示例。