当前位置: 首页 > news >正文

嵌入式培训机构四个月实训课程笔记(完整版)-C++和QT编程第五天-Qt编程技巧若干解答(物联技术666)

链接:https://pan.baidu.com/s/1-u7GvgM0TLuiy9z7LYQ80Q?pwd=1688
提取码:1688

============  QT在Windows下制作图表 ============

QT是跨平台的程序设计库,在windows下的程序往往想要有一个好看的图标,方法如下:

1.准备个ICO图标。例如:myappico.ico

2.用写字版新建个文件,里面就写一行:

IDI_ICON1    ICON   DISCARDABLE   "myappico.ico"

3.保存改名为myapp.rc并将它和图标myappico.ico一起复制到QT工程项目的目录。

4.用写字版打开你的QT工程文件(如 "myapp.pro" ),在里面最后新添一行

RC_FILE = myapp.rc

5.保存,编译工程.

============  phonon 类介绍 ============

phonon最初是一个源于KDE的项目,为使用音频和视频的应用程序开发提供的一个框架。多媒体文件的播放主要过程包括:文件读取、分流、解码、输出。而且还得需要安装相应的后端插件来完成播放任务。

 应用程序与phonon库及后端的关系如下:

 如果想要运行使用Qt中的phonon写的程序,需要满足一下条件:Qt基本库、Qt phonon库、phonon_backend(后端插件)和多媒体播放后台。

下面以linux(Fedora 12)系统、Qt 4.6、mplayer为例,假设Qt基本库已经安装好,默认phonon是没有被安装的,介绍phonon和后端插件的安装。

 Phonon库安装 :

进入源代码的phonon目录,如"/usr/src/qt-everywhere-opensource-src-4.6.0/src/phonon",实际代码并不在里面,从phonon.pro文件可知源代码在“/src/3rdparty/phonon/phonon”,但并不影响编译。在终端输入 “make;make install”即可,如果安装时出错,也可手动将lib、include下相关文件拷贝到安装目录。

后端插件安装 :

(1)下载phonon-mplayer。

        地址: [KDE] Index of /trunk/playground/multimedia/phonon-backends/mplayer

        使用svn下载: svn co svn://anonsvn.kde.org/home/kde/trunk/playground/multimedia/phonon-backends/mplayer

(2)返回phonon-mplayer目录,编译(qmake;make)生成phonon_backend/libphonon_mplayer.so动态链接库。

(3)将libphonon_mplayer.so拷贝到$QTDIR/plugins/phonon_backend/

 说明:帮助文档中介绍Linux下Qt默认只支持gstreamer,其它的不做保证。但实际中由于mplayer安装比较方便,支持的文件格式全,使用的人也非常多,所以我以mplayer为例。而gstreamer的后端插件可以在系统的“/usr/lib64/kde4/plugins /phonon_backend”目录直接找到(如果已经从源上安装了的话)。

 测试

examples/phonon/qmusicplayer我下的例子用mplayer做后端播放音乐会有问题,使用demos/qmediaplayer。

 当然也可以用一个简单的例子,如下:

 #include <QtGui>

 #include <Phonon/MediaObject>

 #include <Phonon/VideoPlayer>

 #include <Phonon/BackendCapabilities>

 int main(int argv, char **args)

 {

    QApplication app(argv, args);

    Phonon::MediaObject *music =Phonon::createPlayer(Phonon::MusicCategory,

                     Phonon::MediaSource("/home/dlw/Music/mxshf.mp3"));

     music->play();

     /* 视频播放

     Phonon::MediaObject *music =

     Phonon::createPlayer(Phonon::VideoCategory,

          Phonon::MediaSource("/media/DLW/movie/One.Night.in.Supermarket.avi"));

     music->play();*/

     return app.exec();

}

MediaObject中有播放完成的信号aboutToFinish();我们写一个槽去接收就能实现。

connect(this->media,SIGNAL(aboutToFinish()),this,SLOT(restartmusic()));

http://www.lryc.cn/news/287077.html

相关文章:

  • 【蓝桥杯选拔赛真题59】python小写字母 第十五届青少年组蓝桥杯python 选拔赛比赛真题解析
  • 代码随想录算法训练营Day37|738.单调递增的数字、贪心算法总结
  • 笔记-影响力-对比,互惠,赌徒原理
  • PIL、cv2、numpy,和pytorch(torch)之间的转换
  • Java面试题50道
  • 电脑怎么剪辑视频?这些软件不可错过
  • HBase学习七:Compaction
  • MySQL定期整理磁盘碎片
  • 【centos7安装docker】
  • 四、Flask学习之JavaScript
  • IO 专题
  • MySql索引事务讲解和(经典面试题)
  • 《微信小程序开发从入门到实战》学习九十一
  • 【立创EDA-PCB设计基础】6.布线铺铜实战及细节详解
  • Node.JS CreateWriteStream(大容量写入文件流优化)
  • 安卓开发之自动缩放布局
  • DDD系列 - 第9讲 实体、值对象
  • 5分钟做自己的微信红包封面
  • pytorch中BCELoss 和 binary_cross_entropy_with_logits之间的区别
  • 无刷电机学习-方波电调 程序篇1(AM32)
  • 如何自己制作一个属于自己的小程序?
  • HTML 入门手册(二)
  • 零基础学Python(5)— 基本数据类型
  • centos7安装Redis7.2.4
  • certificate-transparency-go用例
  • 前端上传大文件使用分片上传
  • Kotlin 解构声明
  • 基于若依的ruoyi-nbcio流程管理系统一种简单的动态表单模拟测试实现(四)
  • 遗传算法原理详细讲解(算法+Python源码)
  • Linux文本处理指令汇总