当前位置:   article > 正文

华清远见作业第四十二天——Qt(第四天)

华清远见作业第四十二天——Qt(第四天)

思维导图:

编程:

代码:

widget.h

  1. #ifndef WIDGET_H
  2. #define WIDGET_H
  3. #include <QWidget>
  4. #include<QTextToSpeech> //语音播报类
  5. QT_BEGIN_NAMESPACE
  6. namespace Ui { class Widget; }
  7. QT_END_NAMESPACE
  8. class Widget : public QWidget
  9. {
  10. Q_OBJECT
  11. public:
  12. Widget(QWidget *parent = nullptr);
  13. ~Widget();
  14. void timerEvent(QTimerEvent *e); //重写定时器事件函数的声明
  15. private slots:
  16. void on_pushButton_clicked();
  17. private:
  18. Ui::Widget *ui;
  19. int id;//超时1
  20. int id2;//超时2
  21. QString t;
  22. //实例化一个语音播放类
  23. QTextToSpeech *speecher;
  24. QString s;
  25. };
  26. #endif // WIDGET_H

 widget.cpp

  1. #include "widget.h"
  2. #include "ui_widget.h"
  3. #include<QTime>
  4. #include<QDebug>
  5. Widget::Widget(QWidget *parent)
  6. : QWidget(parent)
  7. , ui(new Ui::Widget)
  8. {
  9. speecher=new QTextToSpeech(this); //语音
  10. ui->setupUi(this);
  11. id=startTimer(1000);//超时器1
  12. }
  13. Widget::~Widget()
  14. {
  15. delete ui;
  16. }
  17. //当定时器超时时,自动执行的函数
  18. void Widget::timerEvent(QTimerEvent *e)
  19. {
  20. //判断那个定时器超时
  21. if(e->timerId()==id)
  22. {
  23. // static int num=0;
  24. // ui->lab1->setNum(++num);
  25. //获取系统时间
  26. QTime sys_time =QTime::currentTime();
  27. //将系统时间转换为字符串类型
  28. t=sys_time.toString("hh:mm:ss");
  29. //将内容显示到ui界面上
  30. ui->label->setText(t);
  31. //居中
  32. ui->label->setAlignment(Qt::AlignCenter);
  33. }
  34. else if(e->timerId()==id2)
  35. {
  36. if(s==t&& ui->pushButton ->text()=="关闭")
  37. for (int i=0;i<5;i++) {
  38. qDebug() << "成功";
  39. speecher->say(ui->label_3->text());//读取内容
  40. }
  41. }
  42. }
  43. void Widget::on_pushButton_clicked()
  44. {
  45. if(ui->pushButton ->text() == "启动")
  46. {
  47. //将按钮上的文本设置成“关闭”
  48. s=ui->lineEdit->text();
  49. id2=startTimer(1000);//超时2
  50. ui->pushButton ->setText("关闭");
  51. }
  52. else
  53. {
  54. //将按钮上的文本设置成“启动”
  55. ui->pushButton ->setText("启动");
  56. }
  57. }

运行效果:

 

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/170633
推荐阅读
相关标签
  

闽ICP备14008679号