ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 8424|回复: 9

能否在ppt中播放视频文件时自动在某一时刻暂停?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2006-9-15 19:52 | 显示全部楼层 |阅读模式
我需要在在ppt中插入一段wma格式的视频,大约三分钟,我需要播放到一分钟时自动暂停十(可调)秒,能否实现,望高人指教,谢谢!!

[此贴子已经被作者于2006-9-15 19:53:02编辑过]

TA的精华主题

TA的得分主题

发表于 2006-9-15 21:30 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

应该可以的吧

以对象方式插入mediaplayer,在Powerpoint中成为控件如WindowsMediaPlayer1后,给几个按钮赋上动作,让WindowsMediaPlayer1的属性改变即可,

至于时间问题,可以取这个视频的帧数看看,也可以从开始时采集一个时间,待放到n分钟后再作命令。

具体的楼主可以参考help。

刚才我写了几句,实现前进后退暂停快进快退等功能


 


[此贴子已经被作者于2006-9-15 21:53:04编辑过]
BHdjA9ZQ.gif

TA的精华主题

TA的得分主题

 楼主| 发表于 2006-9-15 21:56 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

谢谢c81,我不是想用按钮来控制视频,这倒不难,我想让视频自动在1分钟停下,在ppt中用一小段文字说明一下,过几秒钟再自动接着播放,能稍详细说明一下,谢谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2006-9-16 20:05 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

本人不是很懂vba,在网上狂搜一番,找到一个方法,结合c81兄的办法,得到以下语句:

Private Declare Function timeGetTime Lib "winmm.dll" () As Long

Private Sub CommandButton1_Click()
wmp1.Controls.Play
Dim Savetime As Double

Savetime = timeGetTime
While timeGetTime < Savetime + 20000
DoEvents
Wend
wmp1.Controls.pause
Savetime = timeGetTime
While timeGetTime < Savetime + 5000
DoEvents
Wend
wmp1.Controls.Play
End Sub

再次感谢c81兄!

[此贴子已经被作者于2006-9-17 12:37:26编辑过]

TA的精华主题

TA的得分主题

发表于 2006-9-17 12:07 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
感谢zyhqzn的辛勤劳动,让我们又有了一个学习的机会。尤其是对Doevents函数,本人觉得它很抽象,这次看了这个例子,对它有了更直观的了解。不过,也许是未测试的缘故,宏里面有两处错误,不能运行。现把它修改如下,楼主可拿去一试:
Private Sub CommandButton1_Click()
    WindowsMediaPlayer1.Controls.Play
    Start = Timer
    While Timer < Start + 60
        DoEvents
    Wend
    WindowsMediaPlayer1.Controls.pause
    While Timer < Start + 70
        DoEvents
    Wend
    WindowsMediaPlayer1.Controls.Play
End Sub
上述宏是为控件按钮写的,如果不想添加控件按钮,可把这段宏写在MediaPlayer控件的Click事件里面,则幻灯片放映过程中,当单击MediaPlayer控件的视频窗口时即开始播放,并在所设置的时间点上自动暂停。(若采用此方法,可在MediaPlayer控件的属性设置里将“控件布局”设置为“None”。)

TA的精华主题

TA的得分主题

发表于 2006-9-17 12:29 | 显示全部楼层
不好意思,刚才没注意到4楼作者就是楼主本人,见谅!不过,楼主的宏运行成功了吗?里面有问题的呀。

TA的精华主题

TA的得分主题

 楼主| 发表于 2006-9-17 12:40 | 显示全部楼层

感谢cqdanielzh朋友:

我的这段我也不大懂,我从网上找来的,修改了一下,可以控制

你的这段程序我感觉好像不能使视频暂停,好像有问题。

我感觉这不是很好的方法,好像使系统停顿了,而我想只使视频停顿。

[此贴子已经被作者于2006-9-17 12:49:40编辑过]

TA的精华主题

TA的得分主题

发表于 2006-9-17 20:58 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

谢谢zyhqzn兄。四楼的帖子现在能看懂了(只是还差对wmp1变量的赋值)。你用的这段宏里面引用了Api函数timeGetTime(我也是才弄明白的),比我的宏里面的Timer函数精度要高(timeGetTime是以毫秒为单位的,精度为1/1000,取的是系统开机以来所逝去的时间;Timer函数是以秒为单位的,精度为1/100,取的是自零时以来所逝去的时间.)我的这段宏应该是可行的(我在我的机器上测试是通过了的),也许中间有什么岔子,已不重要。

系统停顿的现象我没有发现,只是在PPT放映窗口中键盘被禁用了(鼠标还是能用的),对其他程序好像没什么影响。另外,由于在While循环中不停地执行DoEvents语句,CPU占用很高(我的奔III笔记本上是100%)。

再次谢谢zyhqzn兄,你的问题和帖子让我学了不少东西。

TA的精华主题

TA的得分主题

 楼主| 发表于 2006-9-18 19:17 | 显示全部楼层

感谢cqdanielzh朋友:

wmp1是我在ppt中对插入的控件的命名(在控件属性中)。

TA的精华主题

TA的得分主题

发表于 2006-9-18 23:18 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
哈!原来如此。妙法呀。受教了,many thanks!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-26 00:32 , Processed in 0.041888 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表