目录
目标
步骤
头文件
配置ui界面
在.h里定义槽函数和字符串链表和定时器指针
在构造函数里读取txt文件并初始化定时器
开始按钮点击函数 开始定时器
停止按钮点击函数 关闭定时器
定时器槽函数
目标
- 两个按钮,一个开始点名,一个停止点名
- 一个标签,名字可以显示在其中
- 一个txt文件,每行一个名字
步骤
头文件
#include <QFile>
#include <QDebug>
#include <QTimer>
配置ui界面
在.h里定义槽函数和字符串链表和定时器指针
//槽函数
private slots:void onTimeout();//链表和指针
private:Ui::Widget *ui;QList<QString> list;QTimer *m_timer;
在构造函数里读取txt文件并初始化定时器
//文件初始化QFile file(":/data/name.txt");//打开文件bool ret = file.open(QIODevice::ReadOnly);//判断是否打开成功if(ret == false){qDebug()<<"open error";return ;}//按行遍历放到字符串链表里while(!file.atEnd()){list.push_back(file.readLine().trimmed());}//关闭文件file.close();//定时器初始化,传入this就不用delete了,关闭界面的时候就会自动释放m_timer = new QTimer(this);//关联槽函数connect(m_timer,&QTimer::timeout,this,& Widget::onTimeout);//设置随机数种子qsrand(time(NULL));
开始按钮点击函数 开始定时器
m_timer->start(5);
停止按钮点击函数 关闭定时器
m_timer->stop();
定时器槽函数
//读取链表里的字符串QString name = list.at(rand()%list.size());//显示到标签上ui->label_name->setText(name);