用delphi制作多媒体数学cai软件的方法
0 引 言
数学教学具有严密、抽象、逻辑性强的特点。传统教学媒体和手段难于表现抽象的数学概念和复杂的数量、图形变化关系。而多媒体技术是集文字、图形、图像、语音、动画等数据为一体的综合信息处理技术,因而多媒体教学软件具有直观、动态、交互性强的特点,能体现数学“数形结合”的教学思想,为学生提供一个理想的学习环境。设计教学软件,应从教育学、心理学角度出发,围绕课题的教学重点、难点,把抽象概念、内容转化成直观的多媒体信息,而不能搞成“课本搬家”,这样才能引导学生的认知从感知到理解,再上升到抽象。因此,制作数学cai软件应以“多媒体、动态显示、交互作用”等手段,通过“模拟、练习”等各种形式使抽象内容具体化,静态图形动态化,引导学生用抽象思维、动态观点揭示问题本质,提高教学质量和学习效果。
delphi是由borland公司开发的优秀的windows开发工具。它既具有vc的强大功能,又有优于vb的可视化快速开发环境,能满足制作cai软件的所有要求,是制作cai软件的理想工具。 1 多媒体控制
1.1 图像显示
图形组件的出现是对传统方法的巨大改进。通过使用图形按钮、网格等组件,可容易地改进应用程序的用户界面,同时可向应用程序添加强大的功能。 delphi的tgraphic及其派生类封装通用的windows图像,诸如位图、图标、图元文件等。image、imagelist、dbimage等组件有picture属性。picture的类型为tpicture,它是任何类型图像对象的容器。
图像显示有两种方式:
(1)设计时装入。添加image组件,用鼠标调整其大小;设置picture属性:用picture editor引入图片文件,图片自动在组件上显示出来;设置stretch属性:stretch为true时,自动调整图片大小以适合组件区域;也可设置autosize属性:autosize为true时,自动根据图片大小调整组件区域的尺寸。 (2)运行时装入。使用loadfromfile方法将一幅图像从磁盘装入图片对象中。如:
image1.picture.loadfromfile(c:\bmp\1.bmp);
上述两种方式,方式1的图像将作为资源,编译进exe文件中,显示速度快,适应于小图像;方式2在运行时装入,需要一定时间,适应较大图像的显示。合理搭配好图形组件,能设计出一个漂亮的界面。1.2 mediaplayer组件
delphi提供mediaplayer是一个功能强大而且极易使用的多媒体组件,它隐藏了mci控制的细节,使用户方便控制各种媒体。它有一组按钮:play,pause,stop,next,prev,step,back,record,eject。
mediaplayer支持许多媒体设备,设计cai软件主要使用其中的几种:dtavivideo(avi动画设备)、dtsequencer(midi音讯器)、dtwaveaudio(wave音频设备) 。在片头或演示实验时常用avi动画,midi常用作背景音乐,wave声音用途更广,可作讲解内容,反馈教学信息,提示等。如下例可播放一个avi文件。
(1)定义媒体设备类型,指明要播放的文件:
form1.mediaplayer1.devicetype := dtavivideo;//也可定义为dtautoselect,根据filename文件类型自动对应媒体设备
form1.mediaplayer1.filename := c:\delphi3\demos\cool.avi;//指明播放文件
form1.mediaplayer1.open; //打开播放文件
(2)设置按钮:为求界面美观,设计时先在object inspector中将visible属性置为true值,使mediaplayer不可见;对特定媒体文件,某些按钮无效可将它隐藏起来。如对avi文件,record、eject按钮就无效。
form1.mediaplayer1.visiblebuttons := [btplay,btpause,btstop,btnext,
btprev,btstep,btback];//设置使用的按钮
form1.mediaplayer1.visible := true; //运行时,设置按钮可见
(3)指定播放窗口:如果不指定播放窗口,系统会自动提供一个播放窗口,其大小位置不固定,影响美观。有必要自己指定播放窗口及播放区域,如果指定的区域与avi文件应显示的区域不同时,媒体播放器会根据播放区域自动调整画面大小。
form1.mediaplayer1.display := form1; //指定播放窗口
form1.mediaplayer1.displayrect := rect(20,20,160,160); //播放窗口的区域
(4)定义播放方法:根据界面要求,有时不用mediaplayer按钮,而自定义播放控制按钮,这时需利用play,pause...等方法。如:在按钮的onclick方法中加入:form1.mediaplayer1.play播放文件,form1.mediaplayer1.close则关闭。1.3 playsound()函数
简单的声音播放也可以使用playsound()函数,其原型如下:
function playsound(pszsound: pchar; hmod: hmodule; fdwsound:dword):bool;stdcall;
其中的fdwsound为播放方式,常用的有以下标志:
标 志 值 功 能 sndsync $0000 同步播放声音,声音播放结束函数才返回(缺省) sndasync $0001 异步播放声音,声音开始播放后函数立即返回 sndloop $0008 重复播放直到下一次playsound sndnostop $0010 如果有声音正在播放,函数不播放并返回
如:playsound(下一课.wav,0,sndasync) 注意:引用前必须在单元中加入mmsystem单元(mmsystem源文件在delphisource\rtl\win目录下),否则不能正确编译。 2 动画 2.1 图像动画 2.2 图形动画 补充:软件开发 , Delphi ,
访问www.zzzyk.com 试试 CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络, |