想问一下使用qt的软定时器问题,就是关于启动多个定时器时,timerId()不是从1、2、3这样往下的ID号吗,
程序如下:
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
void timerEvent(QTimerEvent *);//声明定时器的处理函数
private:
Ui::MainWindow *ui;
};
MainWindow::MainWindow(QWidget *parent) ://构造函数
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
qsrand(time(0));
startTimer(1000);//return 1 timerId=1 以下是启动三个定时器
startTimer(5000);//return 2 timerId=1
startTimer(10000);//return 3 timerId=1
}
void MainWindow::timerEvent(QTimerEvent *t)//定时器的处理函数
{ qDebug() << "Timer ID:" << t->timerId(); //输出ID号
}
结果为:Timer ID: 1
Timer ID: 1
Timer ID: 1
Timer ID: 1
Timer ID: 1
Timer ID: 16777218
Timer ID: 1
Timer ID: 1
Timer ID: 1
Timer ID: 1
Timer ID: 1
Timer ID: 16777218
Timer ID: 33554435