Qt 复选框如何连续发出信号?

Qt 复选框如何连续发出信号?,qt,checkbox,Qt,Checkbox,我想知道是否有任何方法,一旦选中复选框,它会连续运行相应的代码,直到取消选中为止。就我而言,它只运行一次。我已经读到在button类中,有自动重复属性。但是,我没有找到任何与复选框相关的属性。您需要的是两阶段设置: 该复选框将触发QTimer是否正在运行或停止 计时器会触发要运行的代码 如果你现在有类似的东西 connect(checkBox, &QCheckBox::clicked, this, &MyClass::someFunction); 然后您需要这样的东西(假设有一

我想知道是否有任何方法,一旦选中复选框,它会连续运行相应的代码,直到取消选中为止。就我而言,它只运行一次。我已经读到在button类中,有自动重复属性。但是,我没有找到任何与复选框相关的属性。您需要的是两阶段设置:

  • 该复选框将触发
    QTimer
    是否正在运行或停止
  • 计时器会触发要运行的代码
  • 如果你现在有类似的东西

    connect(checkBox, &QCheckBox::clicked, this, &MyClass::someFunction);
    
    然后您需要这样的东西(假设有一个支持C++11的环境)


    如果您的环境尚不具备C++11能力,则需要为
    MyClass
    中的
    checked(bool)
    信号和
    timer
    设置一个接收器插槽作为成员,以便在该插槽中访问它。

    您需要的是两阶段设置:

  • 该复选框将触发
    QTimer
    是否正在运行或停止
  • 计时器会触发要运行的代码
  • 如果你现在有类似的东西

    connect(checkBox, &QCheckBox::clicked, this, &MyClass::someFunction);
    
    然后您需要这样的东西(假设有一个支持C++11的环境)


    如果您的环境尚不具备C++11功能,则需要为
    MyClass
    中的
    checked(bool)
    信号和
    timer
    设置一个接收器插槽,以便在该插槽中访问该信号。

    这是一个好主意。现在我使用不同的计时器。我想知道使用多个计时器进行这种池是不是一种好的做法?此外,我已启动所有计时器,以1ms作为超时延迟。那怎么办?你是说多个计时器对应多个复选框?即每个复选框一个计时器?在唤醒方面不是最优的,但更容易理解事物是如何结合在一起的。除非它给您带来运行时问题,否则我将继续使用它,但是1ms的间隔听起来太短了。但同样,如果您的应用程序的运行时行为正常,请使用有效的方法,而不是对每个复选框使用一个计时器,而是对整个应用程序使用五个计时器。好消息是它正在工作。我之所以延迟ims,是因为我最终将在实时视频源上使用我的代码。将更新它的工作原理这是个好主意。现在我使用不同的计时器。我想知道使用多个计时器进行这种池是不是一种好的做法?此外,我已启动所有计时器,以1ms作为超时延迟。那怎么办?你是说多个计时器对应多个复选框?即每个复选框一个计时器?在唤醒方面不是最优的,但更容易理解事物是如何结合在一起的。除非它给您带来运行时问题,否则我将继续使用它,但是1ms的间隔听起来太短了。但同样,如果您的应用程序的运行时行为正常,请使用有效的方法,而不是对每个复选框使用一个计时器,而是对整个应用程序使用五个计时器。好消息是它正在工作。我之所以延迟ims,是因为我最终将在实时视频源上使用我的代码。将更新它的工作方式