PPT插入计时器
来源:互联网 发布:淘宝刷销量在哪里找人 编辑:程序博客网 时间:2024/05/18 22:54
微软或WPS的PPT软件里只能插入当前系统时间,不明白为什么不设计一个类似秒表计时器的功能,毕竟这个功能非常实用。在网上搜索良久,开始采用在PPT里插入Flash动画计时器,虽然有不少现成的Flash可供下载,而想要定制理想的计时器还得会Flash编程的相关知识,而且这个方法有个严重的缺陷,一旦演示PPT时翻页过快,Flash动画计时器会莫名地卡死;后来采用推荐众多的PPT宏,但是网上下载的许多宏都是加密的,无法查看源代码,于是搜索VBA编程相关的教程,东拼西凑出下面的代码,欢迎大家更改和完善!
PPT 2007下,新建空白文档->开发工具->Visual Basic,VBAProject右键->插入->模块
在右边空白编辑区输入如下代码
Option Explicit'声明api函数,使用定时器Declare Function SetTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As LongDeclare Function KillTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long) As Long Dim flag As BooleanDim oSh As ShapeDim count As Integer '总共的秒数Dim h As Integer '时Dim m As Integer '分Dim s As Integer '秒 Public Sub TimerProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal idEvent As Long, ByVal dwTime As Long) count = count + 1 s = count Mod 60 m = (count \ 60) Mod 60 h = count \ 3600 oSh.TextFrame.TextRange.Text = TimeSerial(h, m, s) End SubPublic Sub OnSlideShowPageChange() If flag = False Then '让下面的代码只执行一次 flag = True '向母版添加文本框 With ActivePresentation Set oSh = _ .Designs(1).SlideMaster.Shapes.AddTextbox( _ msoTextOrientationHorizontal, _ .PageSetup.SlideWidth - 75, _ .PageSetup.SlideHeight - 25, _ 75, 25) oSh.Name = "TimeCount" With oSh.TextFrame.TextRange .Font.Name = "Arial" '文本框字体 .Font.Size = 12 '文本框字体大小 .Text = "0:00:00" '文本框文字 End With End With '启动计时器 Dim id As Long id = SetTimer(0, 0, 1000, AddressOf TimerProc) End If End Sub
文档另存为->其他格式->.ppa文件
使用时,用PPT 2007打开一个文档,开发工具->宏安全性->宏设置->启用所有宏->确定
Office按钮->PowerPoint选项->加载项->PowerPoint加载项->转到
在弹出的窗口中添加刚保存的.ppa文件,关闭窗口,然后开始放映PPT,翻页后才可以看到右下角的计时器。
但是有个bug,每次翻页时计时器总会显示前一个时间点,再显示当前计时点,如果大家有好的解决方案欢迎留言。
或者在PPT母版里面添加文本框(ActiveX控件),然后在TimerProc方法中更新文本框显示计时,这样可以避免上述问题,但是会出现一个新问题,文本框的背景色不能透明。
如果将上述VBA代码添加到PPT文档里再另存为PPT文件,那么播放该PPT时就无需加载.ppa文件,当然前提都要设置PPT2007启用所有宏
- PPT插入计时器
- ppt倒计时器制作方法
- ppt倒计时器制作方法
- PPT演讲计时器
- ppt中插入flash
- SWF插入 PPT 2007
- 网页插入PPT
- PPT中插入Flash
- PPt插入视频同时播放
- 如何设置PPT演示文稿的倒计时器
- 如何在ppt中插入另一张ppt 的内容
- 【特种兵PPT教程】如何给PPT插入、删除背景音乐?
- 怎样在PPT幻灯片中插入flash
- 继续摘抄:PPT中插入FLASH文件
- PPT中如何插入swf文件
- 在ppt中插入flash帮助文档
- 如何在PPT中插入压缩包
- PPT放映期间如何插入音频
- 新手浅谈证书加解密、签名验签
- Android N Graphics之FrameBuffer驱动分析
- webstorm 代码提示
- 51Node 1057(大数)
- Hibernate事务中的加锁机制
- PPT插入计时器
- Java编程思想-14类型信息
- CMOS图像传感器
- AIX上的date命令和循环语句与linux上的不同
- 字符编码 ASCII,Unicode和UTF-8的关系
- struct结构体在32位系统和64位系统的存储空间的不同
- 大鱼吃小鱼
- Debian更改默认jdk版本
- 中介者模式--万能和事佬(行为模式04)