基于二层结构的交互式动态PPT幻灯片设计与实现

2013-10-16 06:57刘广忠齐传辉
河北水利电力学院学报 2013年2期
关键词:界面设计幻灯片控件

刘广忠,齐传辉

(河北工程技术高等专科学校,河北 沧州 061001)

在做报告、产品推介、教师授课等场合,往往需要制作幻灯片以增强生动、直观的效果。在特效要求不太高的情况下,一般首选Microsoft Office Power Point(以下简称PPT)作为幻灯片制作工具。PPT就像一个容器,用户可以将文字、图片、声音甚至影像等媒体元素加入其中,但这些元素都是静态的,一旦设计完成,在播放时用户不可更改。缺乏用户的交互操作,使得灵活性不足,限制了PPT的使用效果。然而,在实践中,经常会遇到诸如课堂互动教学练习[1][4]、会议发言顺序提示等应用实例。这些应用实例都有一个显著特点:用户界面布局基本相同,而数据需要不断变化。解决这类问题,一般采用反复复制/粘贴幻灯片,然后再进行修改的方法。该方法虽然简单易行,但存在播放时用户不能交互操作、操作繁琐易出错、文件存储空间大等问题。本文提出了一种基于二层结构的交互式动态PPT幻灯片的设计方法,即利用PPT内置的VBA进行二次开发[2],很好地解决了以上问题。

1 动态PPT总体结构框架设计

图1 二层结构

将 PPT 的幻灯片作为客户(Client)端界面,使数据进行格式化显示;用 SQL Server、FoxBASE、Excel等数据库作为服务器(Server)端,为客户端界面提供数据支持;通过VBA编程,实现客户端与服务器端的数据连接,该结构如图1所示。

由于Microsoft Office Excel在数据编辑和管理方面表现突出,且已被广泛使用,本文采用PPT+Excel+VBA作为总体结构框架,通过读取Excel文件中的记录,使数据以适当的方式显示在幻灯片上,发挥了PPT与Excel各自的优势。

2 设计实例

以“某公司房屋销售统计分析”为例,说明如何通过VBA编程将PPT与Excel结合起来的设计方法。

2.1 主要解决的问题

本示例的设计主要包括界面设计、建立Excel文件、创建PPT与Excel的连接和数据输出4项内容。界面设计:不同于一般的演示文稿制作,要使用“控件工具箱”中的控件。建立Excel文件:文件名任意,无题目,编写若干条记录,文件结构如图2所示。PPT与Excel的连接:通过ADODB部件来创建PPT与Excel数据库的连接。数据输出设计:通过控件的事件过程来实现。

图2 Excel文件结构

2.2 实现过程

图3 PPT主界面布置

2.2.1 PPT界面设计在PowerPoint 工具栏上单击右键,选择“控件工具箱”,打开“控件工具箱”窗口,在幻灯片上添加三个命令按钮(打开文件:cmdOpen File;下一条:cmdNext;上一条:cmdPrevious)、一个列表框(ListBox1)、一个标签控件(Label1)。单击“其他控件”,在“其他控件”列表中添加一个图形控件(Microsoft office chart,Chart Space1,一般 有 多个版本,可以选择最高版本,本示例采用11.0版本)、一个通用对话控件(Microsoft Common Dialog Control,CommonDialog1)。界面布置如图3所示。

2.2.2 引用ADO部件

双击界面中任何一个控件,打开VBA代码编辑窗口,单击菜单“工具”——“引用”,在“可使用的引用”对话框中,找到“Microsoft ActiveX Data Objects”并勾选,一般选择列表中的最高版本,本示例中使用的是2.8版本。

2.2.3 建立数据库连接并创建记录集

为使模块具有通用性,在工程VBAProject中添加一个模块,为此,在VBAProject上右击,在右键菜单中选择“插入”——“模块”,该模块默认名为“模块1”,可不做修改。在其中编写如下函数:

2.2.4 读取记录集并填充列框表

打开Excel文件,将数据读入记录集,并将“部门”字段的数据填充到ListBox1列表框中。因此,在PPT页面上双击“打开文件”按钮,在打开的VBA编程环境中,写入如下示例代码:

2.2.5 运行结果

最后的运行结果如图4所示。

3 功能扩展

为了突出重点和简单起见,以上内容主要以一个动态绘制单柱图的形式说明了实现交互动态PPT的过程,但在此基础上,稍作修改,可以很容易的实现功能扩充。如图5所示。具体过程不再赘述。

图4 运行结果

4 结论

通过以上设计和编程,实现了仅用一张幻灯片动态显示多组数据的效果,从而将繁琐的幻灯片设计问题转化为简单的Excel文件建立问题,扩展了PPT的功能,实现了PPT的交互性、动态性和灵活性。另外,本示例方法具有很强的通用性和重复使用价值。

需要特别说明的是,由于本示例中包含宏代码,必须将PPT的宏安全设为“中”或“低”,否则看不到正常的播放效果。

图5 多图对比分析图

[1]邱三平.PPT+VBA+Excel增强教学课件交互性研究[J].中国科教创新导刊,2010(14):188-189.

[2]陈思敏.利用Application对象事件实现动态设定演示文稿放映内容[J].电脑知识与技术,2007(12):743-744.

[3]Guy Hart-Davis,杨密,等译.VBA编程从入门到精通[M].北京:电子工业出版社,2008.

[4]唐丽,邹县芳.交互式课件设计中VBA技术应用探究[J].阜阳师范学院学报:自然科学版,2011,28(2):107-109.

猜你喜欢
界面设计幻灯片控件
中医养生APP界面设计
“共享员工”平台界面设计
中国传统元素在界面设计中的应用
水幕幻灯片
面向智能手机的UI界面设计
关于.net控件数组的探讨
实现幻灯片的缩放功能
ASP.NET服务器端验证控件的使用
基于嵌入式MINIGUI控件子类化技术的深入研究与应用
显示或隐藏“大纲”或“幻灯片”选项卡