QTimer,参数化插槽

时间:2017-11-27 15:59:02

标签: c++ qt qt5 qtimer

我正在为继电器控制器编写应用程序。我有一个打开/关闭继电器的功能:

void setRelay(unsigned int relay_number, bool state);

现在我想制作一些按钮来打开一个继电器,让我们说1sek。

我想这样做:

void on_button_clicked()
{
    setRelay(1, true);
    QTimer::singleShot(1000,this,SLOT(setRelay(1,false)))
}

是的,我知道信号不会这样。 有没有办法改变定时器发出的信号,所以它会关闭一个继电器。我提出的最近的事情就是:

QTimer::singleShot(1000,this,SLOT(relay_1_off()));

然后我必须为每个中继设置一个插槽来关闭它:

void relay_1_off(){
    setRelay(1,false);
}

如果没有制作这么多插槽就可以完成,任何人都有更聪明的方法吗? 问候

0 个答案:

没有答案