Qt Creator定时器和随机产生数字
来源:互联网 发布:java面试项目介绍 编辑:程序博客网 时间:2024/05/21 19:23
本文章原创于www.yafeilinux.com转载请注明出处。
有两种方法产生定时器,第一种是自己关联。而第二种就是使用事件,在这里就做下程序的笔记。
在main.cpp中添加代码实现中文:
(其他头文件都是自动生成)
#include <QTextCodec>int main(int argc, char *argv[]){ QApplication a(argc, argv); QTextCodec::setCodecForTr(QTextCodec::codecForLocale()); Widget w; w.show(); return a.exec();}
在widget.h中添加代码(我用的是widget,在www.yafeilinux.com 中用的是window,应该都差不多。那个网站确实写的不错,很支持。)
public: explicit Widget(QWidget *parent = 0); ~Widget(); void timerEvent(QTimerEvent *);private: Ui::Widget *ui; int id1,id2,id3;
下面就进入widget.cpp中了:
id1 = startTimer(1000);id2 = startTimer(5000); id3 = startTimer(10000);qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
上面是加在构造函数中。
void Widget::timerEvent(QTimerEvent *t){if(t->timerId() == id1) ui->label->setText(tr("每秒产生一个随机数:%1").arg(qrand()%10));else if(t->timerId() == id2) ui->label_2->setText(tr("5秒后将关闭"));else qApp->quit();}
这样整个就做完了。随机数的实现:
上面程序中的qrand(),可以产生随机数,qrand()%10可以产生0-9之间的随机数。要想产生100以内的随机数就%100。以此类推。
但这样每次启动程序后,都按同一种顺序产生随机数。为了实现每次启动程序产生不同的初始值。我们可以使用qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));实现设置随机数的初值,而程序每次启动时该函数返回的值都不同,这样就实现了产生不同初始值的功能。
转载于http://www.yafeilinux.com/?p=51
- Qt Creator定时器和随机产生数字
- 十、Qt Creator中实现定时器和产生随机数
- 十、Qt Creator中实现定时器和产生随机数
- QT产生随机数和定时器
- QT产生随机数和定时器
- C#随机产生数字
- Java 产生随机数字
- 产生随机数字
- C#中如何产生字母和数字的随机组合
- C#中如何产生字母和数字的随机组合
- substr() 和产生随机数字的方法:
- 验证码(随机产生字母和数字)
- 随机产生不重复数字
- java随机产生大数字
- IOS随机产生字符串,数字
- 【Python】产生随机数字09
- Qt 产生随机字符数组
- oracle产生随机数字、随机字符串、随机日期
- Linux Shell编程4
- 查询oracle权限
- 选择陪审员 POJ1015 Jury Compromise 动态规划DP 搜索DFS 贪心
- 2011.7.20 工作要求
- J2EE学习中一些开源项目(转载)
- Qt Creator定时器和随机产生数字
- iis不提示错误信息的一种情况
- flex4 数据绑定
- Convert String to Stream
- arm堆栈操作
- 巧用sourceInsight宏实现助手功能
- The Metablog
- POJ 图论分类 + DP(较全 自己又加了点)
- 亚马逊下使用Auto Scaling