• C++DAY49


    widget.h 

    1. #ifndef WIDGET_H
    2. #define WIDGET_H
    3. #include
    4. #include
    5. #include
    6. #include
    7. #include
    8. #include
    9. #include
    10. #include
    11. #include
    12. #include
    13. #include
    14. #include
    15. #include
    16. QT_BEGIN_NAMESPACE
    17. namespace Ui { class Widget; }
    18. QT_END_NAMESPACE
    19. class Widget : public QWidget
    20. {
    21. Q_OBJECT
    22. public:
    23. Widget(QWidget *parent = nullptr);
    24. ~Widget();
    25. void timerEvent(QTimerEvent *event);
    26. private slots:
    27. void on_Btn1_clicked();
    28. void on_Btn2_clicked();
    29. private:
    30. Ui::Widget *ui;
    31. int tId;
    32. QTextToSpeech *speecher;
    33. };
    34. #endif // WIDGET_H

    widget.cpp

     

    1. #include "widget.h"
    2. #include "ui_widget.h"
    3. Widget::Widget(QWidget *parent)
    4. : QWidget(parent)
    5. , ui(new Ui::Widget)
    6. {
    7. ui->setupUi(this);
    8. this->setWindowTitle("闹钟");//设置窗口标题
    9. this->setWindowIcon(QIcon(":/pic/2561.png"));
    10. ui->label->setPixmap(QPixmap(":/pic/60.jpg"));
    11. ui->label->setScaledContents(true);
    12. ui->lineEdit->setPlaceholderText("设定时间");
    13. ui->textEdit->setText("少爷,该启动原神了");
    14. ui->lineEdit->setAlignment(Qt::AlignCenter);
    15. ui->textEdit->setAlignment(Qt::AlignCenter);
    16. speecher = new QTextToSpeech(this);
    17. }
    18. Widget::~Widget()
    19. {
    20. delete ui;
    21. }
    22. void Widget::timerEvent(QTimerEvent *event)
    23. {
    24. if(event->timerId() == tId)
    25. {
    26. QTime t = QTime::currentTime();
    27. QString s = t.toString("hh:mm:ss");
    28. ui->label1->setText(s);
    29. ui->label1->setAlignment(Qt::AlignCenter);
    30. if(ui->lineEdit->text() == ui->label1->text())
    31. {
    32. int i = 0;
    33. while(i < 3)
    34. {
    35. speecher->say(ui->textEdit->toPlainText());
    36. i++;
    37. }
    38. }
    39. }
    40. }
    41. void Widget::on_Btn1_clicked()
    42. {
    43. tId = startTimer(1000);
    44. }
    45. void Widget::on_Btn2_clicked()
    46. {
    47. this->killTimer(tId);
    48. }

  • 相关阅读:
    我的创业之路:3个月的经历与回顾
    React Hooks用法
    注册表的增删改查
    1085 Perfect Sequence
    HTML5 Web 存储:简化数据存储的利器
    Python安装
    Efficientnet网络
    【java学习】访问权限修饰符(24)
    【JavaGuide学习笔记】Day.3
    山东大学数字图像处理实验(一)
  • 原文地址:https://blog.csdn.net/weixin_69186714/article/details/133953744