关于随机数,在Qt中是使用qrand()和qsrand()两个函数实现的。在前面的程序中已经看到了qrand()函数的使用,其可以产生随机数,qrand()%10可以产生0-9之间的随机数。要想产生100以内的随机数就是%100,以此类推。
在使用qrand()函数产生随机数之前,一般要使用qsrand()函数为其设置初值,如果不设置初值,那么每次运行程序,qrand()都会产生相同的一组随机数。为了每次运行程序时,都可以产生不同的随机数,我们要使用qsrand()设置一个不同的初值。这里使用了QTime类的secsTo()函数,它表示两个时间点之间所包含的秒数,比如代码中就是指从零点整到当前时间所经过的秒数。
下面先在widget.cpp的构造函数中添加如下代码:
qsrand(QTime(0, 0, 0).secsTo(QTime::currentTime()));
然后在timerUpdate()函数的最后添加如下代码:
// 产生300以内的正整数
int rand = qrand() % 300;
ui->lineEdit->move(rand, rand);
标签:rand,qsrand,QT,实现,QTime,随机数,qrand,函数 From: https://blog.51cto.com/u_15515702/5967497