7.10 qt作业

这篇具有很好参考价值的文章主要介绍了7.10 qt作业。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

闹钟

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QDebug>
#include <QIcon>
#include <QLabel>
#include <QTextEdit>
#include <QPushButton>
#include <QLineEdit>
#include <QPainter>
#include <QKeyEvent>
#include <QMessageBox>
#include <QFont>
#include <QFontDialog>
#include <QTimerEvent>
#include <QMediaPlayer>
#include <QAudioOutput>
#include <QVideoWidget>

namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT

public:
    QVideoWidget *vw;
    QAudioOutput *audioOutput;
    QMediaPlayer *player;
    explicit Widget(QWidget *parent = nullptr);
    ~Widget();

    void timerEvent(QTimerEvent *e) override;

private:
    Ui::Widget *ui;
    bool flag=false;
};

#endif // WIDGET_H

#include "widget.h"
#include "ui_widget.h"
#include "QFile"
Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

    audioOutput = new QAudioOutput(this);
    player = new QMediaPlayer(this);
    vw = new QVideoWidget(this);
    vw->resize(160,240);
    vw->move(180,40);
    player->setAudioOutput(audioOutput);
    player->setVideoOutput(vw);
    player->setSource(QUrl("https://v2rf4u4qumepw2enhu6m5ploy41qnho6k.free-lbv3.idouyinvod.com/v3-web.douyinvod.com/b834889b01459b5303a7d0871ca9cb73/64ac298a/video/tos/cn/tos-cn-ve-15c001-alinc2/aedc7f073a904b4abb89df52b4e2df85/?a=6383&ch=26&cr=0&dr=0&lr=all&cd=0%7C0%7C0%7C0&br=1127&bt=1127&cs=0&ds=3&ft=GN7rKGVVywf-RFm8Zmo~xj7ScoAp6c1-6vrKq3iZH2o0g3&mime_type=video_mp4&qs=0&rc=aTtnODw0ZmU0OzppPDVpM0BpajZmeDQ6ZnZqPDMzNGkzM0AuLjEuNjE0NjYxMy5gYDYwYSNmXjNycjRvcWxgLS1kLS9zcw%3D%3D&l=20230710225246BBB4D7031D20A71DF5F9&btag=e00028000&ali_redirect_ex_hot=66666800&ali_redirect_ex_beacon=1"));
    audioOutput->setVolume(50);

    startTimer(1000);

    this->setWindowTitle("闹钟");
    this->setWindowIcon(QIcon(":/icon/pineapple.png"));

    ui->timeEdit->setDisplayFormat("HH:mm:ss");
    ui->timeEdit->setTime(QTime::currentTime());

    ui->timeEdit->setAlignment(Qt::AlignCenter);
    ui->lineEdit->setAlignment(Qt::AlignCenter);
    ui->lineEdit->setFont(QFont("Arial", 18));
    ui->lineEdit->setStyleSheet("QLineEdit {"
                                "border: none;"
                                "background: transparent;"
                                "}");
    connect(ui->pushButton,&QPushButton::clicked,[=](){this->flag=true;});
    connect(ui->pushButton_2,&QPushButton::clicked,[=](){this->flag=false;});



}

Widget::~Widget()
{
    delete ui;
}

void Widget::timerEvent(QTimerEvent *e)
{
    e->timerId();
        QDateTime sys_dt = QDateTime::currentDateTime();
        ui->lineEdit->setText(sys_dt.toString("hh:mm:ss"));
        QTime timeEditTime = ui->timeEdit->time();
        QTime lineEditTime = sys_dt.time();
        if(this->flag&&timeEditTime.second() == lineEditTime.second() &&timeEditTime.minute() == lineEditTime.minute() &&timeEditTime.hour() == lineEditTime.hour()){
            player->play();
            QMessageBox::information(this,"闹钟","快起来,你个懒猪!");
        }

}

7.10 qt作业,嵌入式学习,qt,命令模式,开发语言文章来源地址https://www.toymoban.com/news/detail-563922.html

到了这里,关于7.10 qt作业的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 嵌入式学习笔记(1)ARM的编程模式和7种工作模式

        ARM态-ARM指令集(32-bit)     Thumb态-Thumb指令集(16-bit)     Thumb2态-Thumb2指令集(16 32 bit) Thumb指令集是对ARM指令集的一个子集重新编码得到的,指令长度为16位。通常在处理器执行ARM程式时,称处理器处于ARM状态;当处理器执行Thumb程式时,称处理器处于Thumb状态。

    2024年02月10日
    浏览(37)
  • 嵌入式学习-C++Day7&&QT Day1

    2024年02月21日
    浏览(38)
  • 【嵌入式环境下linux内核及驱动学习笔记-(10-内核内存管理)】

    对于包含MMU(内存管理单元)的处理器而言,linux系统以虚拟内存的方式为每个进程分配最大4GB的内存。这真的4GB的内存空间被分为两个部分–用户空间 与 内核空间。用户空间地地址分布为0~3GB,剩下的3 ~ 4GB 为内核空间。如下图。 用户进程通常只能访问用户空间的虚拟地址

    2024年02月11日
    浏览(40)
  • 【嵌入式系统开发】Keil 实现十次作业详细代码

          🔥《嵌入式系统开发》系列专栏主要以LPC1100系列微控制器为硬件平台,详细介绍Cortex—-M0微控制器的原理与开发技术,基于keil仿真软件平台设计最小应用系统板和具有在板仿真器的口袋开发板以及相关例程。       🔥本文已收录于嵌入式系统开发系列专栏:嵌入式

    2024年02月08日
    浏览(36)
  • 嵌入式QT (Qt 信号与槽)

    因为有了信号与槽的编程机制,在 Qt 中处理界面各个组件的交互操作时变得更加直观和简单。 信号 (Signal)就是在特定情况下被发射的事件。 GUI 程序设计的主要内容就是对界面上各组件的信号的响应,只需要知道什么情况下发射哪些信号,合理地去响应和处理这些信号就

    2024年02月02日
    浏览(41)
  • 嵌入式Qt 第一个Qt项目

    打开Qt Creator 界面选择 New Project或者选择菜单栏 【文件】-【新建文件或项目】菜单项   弹出New Project对话框,选择Qt Widgets Application 选择【Choose】按钮,弹出如下对话框 设置项目名称和路径,按照向导进行下一步   选择编译套件 向导会默认添加一个继承自QMainWindow的类,可

    2024年02月20日
    浏览(38)
  • 嵌入式QT- QT使用MQTT

    目录 一、MQTT介绍 二、MQTT概念   2.1 订阅(Subscribtion)   2.2 会话(Session)   2.3 主题名(Topic Name)    2.4 主题筛选器(Topic Filter)    2.5 消息订阅 三、MQTT中的角色 3.1 客户端 3.2 服务器 四、X86平台安装mosquitto 4.1 下载 mosquitto 服务器 4.2 下载 mosquitto 客户端 4.3 mosquitto 命令

    2024年02月13日
    浏览(42)
  • 【嵌入式——QT】容器类

    Qt提供了基于模板的容器类,这些容器类可以用于存储指定类型的数据项,Qt的容器类比标准模板库(STL)中的容器类更轻巧、安全和易于使用。它们还是线程安全的,它们作为只读容器时可被多个线程访问。 容器类是基于模板的类,如常用的容器类QList,T是一个具体的类型,可

    2024年02月22日
    浏览(38)
  • 嵌入式 QT 界面布局管理

    目录 1、实例程序功能 2、界面组件布局 2.1 界面组件的层次关系 2.2 布局管理 2.3 伙伴关系和Tab顺序       创建一个 Widget Application 项目 samp2_2, 在创建窗体时选择基类 QDialog ,生成的类命名为 QWDialog ,并选择生成窗体。     如 此 新建 的项 目 samp2_2 有一 个界 面文 件 qwdi

    2024年02月04日
    浏览(38)
  • 嵌入式Qt Qt中的信号处理

    Qt消息模型: - Qt封装了具体操作系统的消息机制 - Qt遵循经典的GUI消息驱动事件模型 Qt中定义了与系统消息相关的概念;   Qt中的消息处理机制: Qt的核心 QObject::cinnect函数: Qt中的“新”: 实验1 初探信号与槽   运行结果: - 只有QObject的子类才能自定义槽 - 定义槽的

    2024年02月22日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包