前言

前面一章我们学习了delphi 使用windowsmediaplayer播放视频,这次我们直接用实战演练,文章的最后我会把源码的下载地址放上。我们今天来做一个程序,一般双屏的POS机副屏都要播放一些广告,其中图片和视频居多,所以我们今天开发一个双屏播放的程序,支持播放视频和图片。

视频效果

我们在运行程序下有两个文件夹,JPG是图片存放的路径,VIDEO是视频存放的路径,上面视频播放的就是我们在这两个文件夹下放至的图片和视频文件。

图片文件放到JPG文件夹下,只支持JPG格式

视频文件放到VIDEO文件夹下,支持mp4和wmv格式的

解决思路

双屏播放的原理来说很简单,就是系统里面设置了双屏后,我们一般第二屏设置都用扩展到第二显示器上,说白了就是当设置的播放位置超出来主屏幕后就会在第二屏上显示出来。

所以我们设置程序的时候加入一个主屏的分辨率设置,这样设置好了,第二屏的显示直接从超过的主屏分辨率显示即可。

代码演示

我们新建一个程序起名为SumScreen

参数设置里面加上主副屏的辨率设置,然后加入一个RadioGroup用于选择是视频播放还是图片播放,下面有两行提示,就是我们的视频源和图片源存放位置。最后加一个保存按钮,每次保存设置后只要重启就可以自动播放了。

单元文件Unit SysCfg

我们建一个单元文件SysCfg,这个是存放刚才的参数的,保存后用于写入本地的INI文件里,方便下次读取

先定义一个Record的结构存放参数。

然后加入三个方法,一个是读取参数,一个是保存参数,再有一个就是写入日志,如果运行中有什么错误会写入本地的日期文件,具体的方法如下:

核心代码 ScreenDisPlay

这个是处理我们播放视频的单元文件,在窗体上我们加入一个Window Media Player,注册这个控件见文章开头那篇链接。一个panel里面加上Image图片的控件。还有一个重要的加入一个TFileListBox的控件,用于加载我们的文件夹下的文件。再就是一个时间控件,用于定时刷新图片和控制视频的播放

在Privide里面定义了一些参数和方法

定义器里的方法

窗体加载时我们在读取本地文件用于处理播放

视频窗口大小调整事件

播放下一个视频

这里我只是把几个重点的方法贴了上面,具体的所有程序运行可以看下面的我们的源码地址。

源码下载地址:

链接:https://pan.baidu.com/s/1UMKozTnK8eJT57x5a65d6w 密码:r97u


-END-

长按下方二维码关注微卡智享

【超级干货】Delphi轮播视频和图片程序(用于双屏显示程序)相关推荐

  1. android viewpager动态加载图片,Android使用ViewPager加载图片和轮播视频

    作为Android基础组件之一,大家对viewpager已经很熟悉了,网上也有很多使用viewpager来加载图片的案例.但是像微信那样点击图片,可以轮播显示图片和视频的例子却没找到.正巧项目中有需求 ...

  2. 使用ViewPager来加载图片和轮播视频

    作为android基础组件之一,大家对viewpager已经很熟悉了,网上也有很多使用viewpager来加载图片的案例.但是像微信那样点击图片,可以轮播显示图片和视频的例子却没找到.正巧项目中有需求 ...

  3. 艾司博讯:拼多多主图轮播视频怎么搞

    我们知道,现在做电商的朋友都会采取许多办法来提高销量.为了让用户更加清晰地了解自己的商品,除了上传图片以外,许多商家还会上传视频,来让用户全方位地了解商品情况.那么拼多多轮播视频怎么上传,下面就为大家 ...

  4. element-ui中轮播图自适应图片高度

    哈哈,久违了各位.我又回来了,最近在做毕设,所以难免会遇到很多问题,需要解决很多问题,在万能的博友帮助下,终于解决了Element-ui中轮播图的图片高度问题,话不多说上代码. 那个axios的使用不 ...

  5. 解决v-for轮播图中图片无法显示

    v-fo中src拿不到img的地址,图片无法显示 view可以打印出list.data中的img值,说明数组没问题,已经拿到图片值: 将src直接赋值地址,有图片显示,那么就是src没有拿到图片地址: ...

  6. 万能的公告栏轮播 View,也可用于商品个性垂直轮播展示

    BulletinView 项目地址:Bakumon/BulletinView  简介::camel: 万能的公告栏轮播 View,也可用于商品个性垂直轮播展示 更多:作者   提 Bug 标签: :c ...

  7. php 图片程序分离,一个图片地址分解程序(用于PHP小偷程序),

    一个图片地址分解程序(用于PHP小偷程序), 如题,返回一个数组,可以获得图片地址的base url,相对地址,名称等,具体见下例: 运行结果: array(4) { ["base_url& ...

  8. Flexslider图片轮播、文字图片相结合滑动切换效果

    Flexslider是一款基于的jQuery内容滚动插件.它能让你轻松的创建内容滚动的效果,具有非常高的可定制性.开发者可以使用Flexslider轻松创建各种图片轮播效果.焦点图效果.图文混排滚动效 ...

  9. jQuery/Zepto的Bootstrap轮播图中图片自适应宽高并居中插件

    2019独角兽企业重金招聘Python工程师标准>>> 今天写了一下午带晚上的jQuery/Zepto的Bootstrap轮播图插件,功能是能够根据当前较短的一边实现自适应宽度,并且 ...

最新文章

  1. 面试必会系列 - 1.7 JVM 内存模型
  2. oracle 10g r2 for solaris x86,Oracle10g for Solaris9(x86)安装指南
  3. Linux服务之nginx服务篇一(概念)
  4. 矩阵运算和一些基本的几何运算
  5. ModuleNotFoundError: No module named ‘pycocotools‘
  6. ftp文件推送 linux_Linux 终端访问 FTP 及 上传下载 文件
  7. 基于Java的中华文化传播系统(含数据库文档)
  8. 一文详解Attention机制
  9. 单片机技术应用实训装置
  10. oracle asm查看大小,Oracle ASM查看信息
  11. java delphi aes加密算法_谁有C#与delphi通用的AES加密算法
  12. 为了让孩子入门编程,Scratch的设计者操碎了心!谈谈Scratch编程环境和语言中的设计理念
  13. 【Proteus仿真】利用74LS148扩展单片机中断
  14. maya腿的蒙皮旋转枢轴_python Maya烘焙枢轴
  15. 简单了解下什么是 Web 3.0?
  16. 在Ubuntu中获取奥比中光的深度值 Python代码
  17. 经验分享|如何做好FAQ设计
  18. mysql8.0 安装与卸载
  19. 论黄金分割的设计使用
  20. kotlin中map对value进行排序

热门文章

  1. 基于STM32单片机三色全彩RGB LED灯控制系统 原理图PCB程序设计
  2. 全志A33移植openharmony3.1标准系统之添加产品编译
  3. 论文笔记| The Emergence, Advancement and Future of Textual Answer Triggering
  4. 计算机应用基础主要按键,计算机应用基础教案第一讲:键盘与鼠标(中职教育)...
  5. Flink Asynchronous IO异步操作
  6. Glide加载网络图片模糊变形问题解决办法
  7. 手机裁剪音频的软件有哪些?来看看这几个吧
  8. 2020年中国数字经济区域发展竞争格局报告
  9. 关于解决win10重装后右键单击一直转圈的问题
  10. 社工工具包 SEToolkit