使用C#操作幻灯片

发表于:2014-8-25 10:15

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:LearningHard    来源:51Testing软件测试网采编

分享:
  三、遥控幻灯片程序的实现
  有了上面的解释,我们再看下面的实现代码时,相信大家肯定不会觉得有任何难道了,下面就直接贴出部分的实现的代码(这样可以让大家参看代码自己去实现剩余的部分,当然在文章的最后也会提供全部源码的下载):
/// <summary>
/// 检查是否打开幻灯片程序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
privatevoid btnCheck_Click(object sender, EventArgs e)
{
// 必须先运行幻灯片,下面才能获得PowerPoint应用程序,否则会出现异常
// 获得正在运行的PowerPoint应用程序
try
{
pptApplication = Marshal.GetActiveObject("PowerPoint.Application") as PPt.Application;
// 成功获取了PowerPoint程序时,使UI按钮可用
this.btnFirst.Enabled = true;
this.btnNext.Enabled = true;
this.btnPrev.Enabled = true;
this.btnLast.Enabled = true;
}
catch
{
MessageBox.Show("请先启动遥控的幻灯片", "Error", MessageBoxButtons.OKCancel, MessageBoxIcon.Error);
}
if (pptApplication != null)
{
//获得演示文稿对象
presentation = pptApplication.ActivePresentation;
// 获得幻灯片对象集合
slides = presentation.Slides;
// 获得幻灯片的数量
slidescount = slides.Count;
// 获得当前选中的幻灯片
try
{
// 在普通视图下这种方式可以获得当前选中的幻灯片对象
// 然而在阅读模式下,这种方式会出现异常
slide = slides[pptApplication.ActiveWindow.Selection.SlideRange.SlideNumber];
}
catch
{
// 在阅读模式下出现异常时,通过下面的方式来获得当前选中的幻灯片对象
slide = pptApplication.SlideShowWindows[1].View.Slide;
}
}
}
// 第一页事件
privatevoid btnFirst_Click(object sender, EventArgs e)
{
try
{
// 在普通视图中调用Select方法来选中第一张幻灯片
slides[1].Select();
slide = slides[1];
}
catch
{
// 在阅读模式下使用下面的方式来切换到第一张幻灯片
pptApplication.SlideShowWindows[1].View.First();
slide = pptApplication.SlideShowWindows[1].View.Slide;
}
}
  下面就看看该遥控程序的运行效果是如何的:
  四、小结
  到这里本专题的介绍就介绍就结束,其实本程序最好是放在手机客户端,这样我们就可以利用手机来对我们的幻灯片进行翻页了,这样就和激光笔的效果就是一样的了,这里就给大家先提供一个思路吧,我相信如果要在手机客户端实现的话,肯定就需要蓝牙编程的技术或者WiFi编程的技术来获取笔记本电脑的幻灯片应用程序,只要我们成功在手机客户端获取了PowerPoint应用程序对象的话,后面的实现过程就和本程序的实现方式就基本一样的,然而我们同时打开笔记本的蓝牙和手机的蓝牙(也可以利用WiFi),这样我们就可以轻松实现用手机来遥控我们演讲文稿了,如果有时间的话,也会研究下手机的蓝牙编程技术,实现了肯定会在博客中向大家分享的,如果其他朋友提前实现了的,也不要忘记在博客分享给大家了。
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号