QT学习笔记(一)之本地播放器

2023-10-29

先从百度百科上摘取一段QT定义:

Qt是 一个1991年由奇趣科技开发的跨平台 C++ 图形用户界面 应用程序开发框架。它既可以开发 GUI 程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,易于扩展,允许组件编程。2008年,奇趣科技被 诺基亚 公司收购,Qt也因此成为诺基亚旗下的编程语言工具。2012年,Qt被Digia收购。2014年4月,跨平台集成开发环境Qt Creator 3.1.0正式发布,实现了对于 iOS 的完全支持,新增WinRT、Beautifier等插件,废弃了无Python接口的GDB调试支持,集成了基于Clang的C/C++代码模块,并对Android支持做出了调整,至此实现了全面支持 iOS Android WP
Qt是1991年奇趣科技开发的一个 跨平台C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所有功能。Qt很容易扩展,并且允许真正地组件编程。基本上,Qt 同  X Window 上的 Motif,Openwin,GTK 等图形界 面库和 Windows 平台上的  MFC,OWL,VCL,ATL 是同类型的东西。(以上来自百度百科 )
今天先记录QT在开发一款基于QT的本地视频播放器的过程中获得的经验和相关技术
先在.Pro工程文件里加入以下三行:
QT   += multimedia
QT   += multimediawidgets
QT   += network
然后执行qmake

创建Qt资源文件

从网上下载图标,加入Qt工程里的资源文件

Qt的界面可以由Qt设计师界面拖动图标组件直接生成,非常方便

核心代码主要关注以下2行:

    QString filename = QFileDialog::getOpenFileName();
    mediaPlayer->setMedia(QUrl::fromLocalFile(filename));
这两行代码可以直接打开一个文件选择对话框,然后选择视频文件,十分方便

以下2行代码是设置进度条:

    ui->horizontalSlider->setRange(0,position)

    ui->horizontalSlider->setValue(position)
以下三行代码是设置图标:

    ui->toolButton->setToolTip("play");
    ui->toolButton->setAutoRaise(false);
    ui->toolButton->setIcon(QPixmap(":/images/start.png"));
要包含以下头文件:

#include <QVideoWidget>
#include <QMediaPlayer>
#include <QFileDialog>
#include <QString>
完整的代码要下次更新博客才发布,敬请期待......


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QT学习笔记(一)之本地播放器 的相关文章

  • 在没有加载器的情况下实例化内联组件

    有没有办法实例化内联Component 即在同一文件中定义 而不使用Loader 我不太关心使用的性能影响Loader因为我要用很多东西污染我的文件Loader包装纸 我发现从 JavaScript 创建动态 QML 对象 http doc
  • 如何让小部件在上下文菜单出现时接收鼠标释放事件

    在Ubuntu20 04上 当上下文菜单出现时 我无法让小部件接收鼠标释放事件 而Windows可以接收 我的pyqt版本是5 15 2 我考虑过手动发送鼠标释放事件 但我不知道当上下文菜单出现时哪些系统会收到鼠标释放事件 这样做可能会导致
  • 清除pyqt中布局中的所有小部件

    有没有办法清除 删除 布局中的所有小部件 self plot layout QtGui QGridLayout self plot layout setGeometry QtCore QRect 200 200 200 200 self r
  • QMainWindow 上的 Qt 布局

    我设计了一个QMainWindow with QtCreator s设计师 它由默认的中央小部件 aQWidget 其中包含一个QVBoxLayout以及其中的所有其他小部件 现在我想要的一切就是QVBoxLayout自动占据整个中央小部件
  • C++ SQL 查询构建库

    我正在寻找一个提供与 c SelectQueryBuilder 库类似功能的 c 库 http www codeproject com Articles 13419 SelectQueryBuilder Building complex a
  • Qt 嵌入式触摸屏 QMouseEvents 在收到 MouseButtonRelease 之前未收到

    我在带有触摸屏的小型 ARM 嵌入式 Linux 设备上使用 Qt 4 8 3 我的触摸屏配置了 tslib 并对其进行了校准 因此 etc 中有一个 pointcal 文件 我的触摸事件的位置工作得很好 但无论如何我都会在鼠标按下或鼠标释
  • PyQt4 信号和槽

    我正在使用 PyQt4 编写我的第一个 Python 应用程序 我有一个 MainWindow 和一个 Dialog 类 它是 MainWindow 类的一部分 self loginDialog LoginDialog 我使用插槽和信号 这
  • 无法运行 Qt 应用程序:找不到版本“Qt_5”

    我运行 Ubuntu 16 04 LTS 我的问题是我无法运行可以编译的 Qt5 应用程序 这是我尝试运行它时得到的结果 home user Desktop sconfig dist Release GNU Linux SCongif us
  • QFileSystemModel setRootPath

    我正在尝试创建一个 Qt 应用程序来显示文件夹 Mac OS 中的 Users 文件夹 的内容 这是代码 QFileSystemModel dirModel new QFileSystemModel dirModel gt setRootP
  • Qt(在 Windows 上)将权限级别设置为“requireAdministrator”

    我正在使用 Qt Creator 并努力制作 exe文件默认以管理员身份运行 在线阅读所有解决方案我试图将这一行放入我的 pro file QMAKE LFLAGS MANIFESTUAC level requireAdministrato
  • 通过引用传递 [C++]、[Qt]

    我写了这样的东西 class Storage public Storage QString key const int value const void add item QString int private QMap
  • Qt 支持 Windows 蓝牙 API 吗?

    谁能告诉我 Qt 是否支持 Windows 蓝牙 API 如果是这样 您能否分享一些有关如何使用它的信息 自上次答复以来 这个问题的答案发生了一些变化 Qt 5 2 版为 Linux BlueZ 和 BlackBerry 设备实现了蓝牙 A
  • 如何向 PyQt5 GUI 添加线程?

    所以我使用 QT Designer 创建了一个 GUI 它工作得很好 但在更复杂的调用中 它不会更新主窗口并锁定 我想运行我的CustomComplexFunction 在根据不断变化的后端信息更新主窗口中的文本编辑时 我希望它每 2 秒运
  • Linux 上的静态 Qt5 构建:部署时如何处理字体?

    我使用这些配置选项创建了 Qt 5 2 0 库的静态版本 Ubuntu 12 04 开源 确认许可 force pkg config 发布 静止的 前缀 home juzzlin qt5 无icu opengl桌面 无油嘴滑舌 辅助功能 n
  • 如何为 Windows 安装开源 Qt 库 5 二进制版本

    这个问题具体是关于Qt libraries 5 0 0 for Windows VS 2010 406 MB at http qt project org downloads http qt project org downloads 但我
  • 使用 QWT 构建时出错

    我收到一个错误 undefined reference to QwtPlot QwtPlot QWidget 当我尝试构建我的项目时 即使设置中一切看起来都很好 在我的 CmakeLists txt 中我有 include director
  • QThread - 使用槽 quit() 退出线程

    我想在线程完成运行时通知对象 但是 我无法让线程正确退出 我有以下代码 处理器 cpp thread new QThread tw new ThreadWorker connect tw SIGNAL updateStatus QStrin
  • QML MouseArea 将事件传播到按钮

    我正在开发一个应用程序 其菜单类似于 Android 版 Gmail 收件箱应用程序菜单 基本上 当您按下按钮打开菜单时 它就会滑入视图 用户可以将其滑开或按菜单上的按钮 对于滑动我使用了代码SwipeArea from kovrov ht
  • PyQt5 使动态小部件可点击并将参数传递给另一个函数

    我正在尝试制作动态小部件并使它们可点击 通过单击一个小部件 它应该将动态值传递给其他小部件 我尝试过 sender 和其他访问小部件的选项 但没有任何效果 所有小部件都从最后一个小部件发送信息 下面是代码 import sys from P
  • qdbusxml2cpp 未知类型

    在使用 qdbusxml2cpp 程序将以下 xml 转换为 Qt 类时 我收到此错误 qdbusxml2cpp c ObjectManager a ObjectManager ObjectManager cpp xml object ma

随机推荐

  • 阶段性学习总结

    前 言 从开学到现在 时间已过去两个月之久 这段时间 一直断断续续做js学习研究 有时候浪费了不少时间 还疑惑不断 下面就这段时间学习状况 以及相关的生活习惯做关联总结 javascripty以下简称 javascript 总体 在总结之前
  • 后台登陆万能密码总结

    1 Asp Aspx万能密码 or or or 1 1 or 1 1 or a a or a a or a a or a a or 1 1 a or 1 1 or a a or 1 or 1 1 1 1 or 1 1 or 1 1 OR 1
  • MPI并行编程——多进程程序设计

    MPI Massage Passing Interface 它不是一种语言 而是一种库描述 是消息传递函数库的标准规范 MPI标准定义了一组具有可移植性的编程接口 在Fortran和C C 中可以直接对相应的函数进行调用 MPI有很多种实现
  • 基于python的在线考试系统的设计与实现

    源码获取 点击下载 基于python的在线考试系统的设计与实现 本系统实现了在线考试网的主要功能 以无纸化的管理不但可以提高工作效率 减少监考人员数量 增强公平性等 而且可以实现学校或企业的低成本投入 高效率办公的宗旨 在线考试网 它包括有
  • Windows日志浅析

    从这篇文章开始本人开始结合Windows产品日志分析大神 RANDY FRANKLINSMITH 的电子书 以及自己的实验对Windows操作系统的日志开始分析 也是对自己的一种激励 至少希望自己能坚持下去这个分析 并且希望自己可以通过这个
  • 网易月薪25K的Linux运维面试真题曝光,值得一试!

    首先我们来看下网易Linux运维工程师招聘岗位要求 岗位定义 高级系统工程师 应用运维 岗位薪资 15K 25K 职位描述 1 负责公司运维体系的建设 组织在线移动APP和业务系统以及自建私有云的监控 维护 推进自动化运维 2 建立和完善公
  • Flink CDC 详解

    目录 一 CDC 简介 二 Flink CDC 案例实操 三 Flink CDC 2 0 四 核心原理分析 一 CDC 简介 什么是 CDC CDC 是 Change Data Capture 变更数据获取 的简称 核心思想是 监测并捕获数
  • 埋点是什么?有什么作用?前端如何埋点?

    一 什么是埋点 埋点 tracking 是指在应用程序中插入代码或工具来记录某些事件的行为和属性 例如用户在应用中的点击 浏览 购买 注册等操作行为 这些数据可以被用来分析用户行为 优化产品功能 改进用户体验等 通过埋点 开发人员可以采集用
  • SQL类型操作集合

    字符串使用汇总 将字符串中从某个字符开始截取一段字符 然后将另外一个字符串插入此处 select stuff hello world 4 4 返回值hel orld 返回从指定位置开始指定长度的字符串 select substring He
  • IP协议详解之IPv6头部结构简介

    IPv6协议是网络层技术发展的必然趋势 因为它不仅解决了IPv4地址不够用的情况 还做了很大的改进 比如 增加了多播和流的功能 为网络上多媒体内容的质量提供精细的控制 引入自动配置功能 使得局域网管理更加方便 增加了专门的网络安全功能 IP
  • 计算机网络----数据封装过程,TCP/IP 模型与OSI模型的比较,IP包头格式

    数据封装过程 应用层 上层数据 传输层 数据段segement TCP头部 上层数据 网络层 数据包package IP头部 TCP头部 上层数据 数据链路层 数据帧frame MAC头部 IP头部 TCP头部 上层数据 物理层 比特流bi
  • Python 21.opencv 霍夫直线变换

    import cv2 import numpy as np img cv2 imread lane jpg img cv2 imread pic2 PNG gray cv2 cvtColor img cv2 COLOR BGR2GRAY e
  • 一位博士的返乡笔记,深刻入骨!

    王磊光 正和岛 2023 01 24 17 15 发表于甘肃 这是一位博士 春节回家的观察和总结 从乡村到城市 是一个长久被书写的主题 其中的个人体验 其实就是城镇化历史的一部分 本文发表于2015年春节 当时人民网也转发了此文 距今已8年
  • LeetCode-1305. All Elements in Two Binary Search Trees

    Given two binary search trees root1 and root2 Return a list containing all the integers from both trees sorted in ascend
  • PyTorch no longer supports this GPU because it is too old.

    今天在linux系统 gtx 960显卡 cuda 9 1版本上用pytorch操作显卡 报出了如下warning PyTorch no longer supports this GPU because it is too old 且程序出
  • 【转】Qt多线程操作界面---在QThread更新QProgressBar

    include
  • 多目标粒子群算法论文【matlab代码】

    一 算法思路 多目标优化问题存在于生活当中的方方面面 在机器学习中的数据预处理特征选择阶段 所选取的特征子集大小与降低其分类错误率就是两个冲突的目标 要在尽量选取较少特征子集的同时降低分类的错误率 许多学者尝试利用基于变异 拥挤和支配策略的
  • 观察者模式与发布-订阅模式

    相关设计模式 设计模式 design pattern 是针对软件设计中普遍存在的各种问题所提出的解决方案 观察者模式 发布 订阅模式 观察者模式 观察者模式 Observer pattern 指的是在对象间定义一个一对多 被观察者与多个观察
  • Linux RS232/485/GPS 驱动实验

    一 Linux 下 UART 驱动框架 本实验驱动厂商已写好 只需看原理图改设备树就行 1 uart driver 注册与注销 uart driver 结构体表示 UART 驱动 uart driver 定义在 include linux
  • QT学习笔记(一)之本地播放器

    先从百度百科上摘取一段QT定义 Qt是 一个1991年由奇趣科技开发的跨平台 C 图形用户界面 应用程序开发框架 它既可以开发 GUI 程序 也可用于开发非GUI程序 比如控制台工具和服务器 Qt是面向对象的框架 使用特殊的代码生成扩展 称