a6w高级编程(编辑修改稿)内容摘要:

的实现 (单击这里下载源程序 ) 首先我们来看一下程序执行后的效果 (图 41),大家可以看到程序中的抛物线并不圆滑 ,这其实也说明了程序 的制作原理 ,实际上这段抛物线是有若干段直线拼接而成的 . (图 41) (图 42)是本程序的流程图 ,此程序的关键是流程图中 坐标系 和 开始画抛物线 两个计算图标的设计 . (图 42) 坐标系 计算图标的内容 (图 43) (图 43) 开始画抛物线 计算图标的内容 (图 44) (图 44) 从计算图标中可以看出,抛物线其实是由 (x1,y1)到 (x2,y2)的直线首尾连接而成 . 二、正弦函数 y=sin(x)图象的实现 实现的原理和抛物线相似 ,这里不再作详细的介绍 ,下面给出程序的效果图 (图 45)和流程图 (图 46) (图 45) (图 46) 三、利用函数制作复合按钮 程序的效果图如下 (图 47):这里大家只可看到 “播放 ”按钮,其实还有一个 “暂停 ”按钮和播放按钮是重叠的,只是现在 “暂停 ”按钮此时处于无效的状态,被隐藏起来了。 这也是本程序实现的技术要点。 (图 47) 程序的流程图如下 (图 48),结构比较简单。 (图 48) “初始化 ”计算图标的内容如(图 49),各语句的解释参考 “注释 ”语句。 (图 49) “暂停 ”和 “播放 ”计算图标的内容如(图 410)和(图 411),各语句的解释参考 “注释 ”语句。 (图 410) (图 411) 下面设置播放按钮的属性,这也是本程序的关键。 在 Response选项卡中 (图 412),设置按钮的响应条件为 play=0(红框部分) ,即表示 “播放 ”按钮在 play=0时有效。 (图 412) 在 Button选项卡中 (图 413),选中 Hide When Inactive复选框。 即表示按钮在无效状态是隐藏。 (图 413) “暂停 ”按钮的属性设置与 “播放 “按钮相似,其在 Reaponse选项卡中的响应条件 Active if :play=1,同样在Button选项卡中,选中 Hide When Inactive复选框。 从上面的设置不难看出,当 play01时, “播放 ”按钮有效(显示),而 “暂停 ”按钮无效(隐藏)。 第四章 外部函数 UCD 第一节 自定义函数的引入 UCD(User Code Dll)是用户自定义函数的缩写。 包括 AW 自带的 UCD 函数和用户用 VB、 VC、 Delphi编写的 UCD函数。 UCD 函数又称为外部函数,在使用之前必须先引入到当前文件中,当外部函数被正确引入后,我们就可以象使用 系统函数一样使用它了。 UCD 函数的后缀一般为 U32( 32 位)或 UCD( 16 位,在 中使用)。 用户自定义函数引入的步骤,以装载 为例: 用 AW 新建一个文件,并命名为 . 选择 window菜单 选择 functions菜单项 弹出函数对话框(图 11)所 示。 (图 11) 在函数对话框的 Category下拉列表中选择当前的文件 单击 Load..按钮(图 12)。 (图 12) 弹出 Load Function对话框(图 13) 在对话框中选择要加载的外部函数,这里选 单击 “打开 ”按钮 (图 13) 弹出(图 14)对话框,在 name项下面显示的是 所包含的两个函数 cover()和 Uncover(),按住 ctrl键,再分别单击着两个函数就可以选中它们。 单击 Load按钮装载这两个被选中的函 数。 图( 14) 如果出现(图 15),说明函数已经加载成功,红框中显示的是函数的名称和居具体的使用方法。 (图 15) 将外部函数引入到计算图标或指定的区域,只要打开计算图标,双击(图 15)中的函数名即 可,效果如(图16)所示。 (图 16) 第二节 Authorware 部分自带的 UCD 函数祥解 一、 :控制按键的响应范围,一共有两个函数,介绍如下: InstallApwkeys():扩大程序的按键范围,使用户可以使用 ctrl、 caps lock、 Num Lock 等键。 RemoveApwkeys():将扩展的按键范围卸载,此时 ctrl、 caps lock、 Num Lock 等键无效,防止系统锁死。 对按键范围的测试实例,程序流程图如下:(图 21) (图 21) 二、 :复制文件函数,只有一个函数,其语法如下: result:=CopyFile(源文件路径及文件名,目标文件及文件名) 功用:对源文件进行拷贝,如果目标文件存在,则对其进行覆盖。 拷贝成功后,将所拷贝的字节 数赋给 result,发生错误则 result 返回负值。 三、 :覆盖桌面的函数,一共包含两个函数,介绍如下: Cover():以黑色覆盖整个桌面,一般在程序的开头时使用。 Uncover():恢复被覆盖的捉名,一般在程序退出时使用。 四、 :文本编辑函数,一共包含八个函数来实现对文本的编辑,介绍如下: result:=EditboxDisplay(string,x_coord,y_coord,height,width) 功能 :创建一个滚动编辑框 ,用于显示和编辑文本 .string为放置于编辑框中的文。 ,x_coord,y_coord为编辑框左顶角的坐标。 height,width为编辑框的高度和宽度 . EditboxClear( ):将编辑框中选取的文本删除 . cut_string:=EditboxGetText( ):将编辑框中的全部内容赋给变量 cut_string. 4 、 EditboxUndo():撤消对编辑框的最后一次操作 . EditboxErase():将函数 EidtboxDisplay()创建的编辑框擦除 . Cut_String:=EditboxCut():将编辑框中选取的部分剪切 ,赋给变量 Cut_String,同时保存于 WINDOW 的剪切板上 Cut_String:=EditboxCopy():对编辑框中选定的内容进行复制 . EditboaPaste():将剪切或复制到剪切板上内容粘贴到编辑框中光标所在的位置上 . 五、 (多媒体设备控制函数 ) 功能 :一共具备波形 (WAVE)文件控制、 MIDI 控制、 CD 控制、动画控制、 MIC(媒体界面控制 )五大类函数 ,下面介绍最为常用的前三类函数 . 波形控制函数 :支持 以 WAVE 格式存放的数字化声音文件 .具体的函数如下 : 函数名及使用语法 函数功能 errorCode:=WavePlay(filename,wait) 播放指定的 WAVE 文件 ,参数 wait是用来确定播放模式的 .当wait为 True时 ,只有当播放完 WAVE 文件是才执行下面的图标 ,当 wait为 False时 ,WAVE 文件和下面的图标同步执行 . errorCode := WavePlaySegment(fileName, fromSeconds, forSeconds, wait) 从指定 的起始位置 (fromseconds)播放指定的播放 (forseconds)的WAVE 文件 .参数介绍如下 : fromseconds:以秒为单位指定文件的起始播放位置 forseconds:以秒为单位指定文件播放的长度 wait: 含义和方法同上 errorCode := WaveStop() 停止播放当前的声音文件 ,同时返回 MCI 错误代码 ,无错时返回 0 errorCode := WavePause() 暂停播放当前的声音文件 ,同时返回 MCI 错误代码 ,无错时返回 0 errorCode := WaveResume() 继续播放当前的声音文件 ,同时返回 MCI 错误代码 ,无错时返回 0 result := WavePlaying() 监控 WAVE 文件的播放状态 ,如正在播放 ,返回 True值 ,否则返回False值 MIDI 控制函数 ,具体函数介绍如下 : 函数名及使用语法 函数功能 errorCode:=MIDIPlay(filename,tempo,wait) 以参数 tempo指定的速度播放指定的 MIDI 文件 . 参数 wait的作用与 WavePlay()函数一致。 参数 tempo:指定 MIDI文 件的播放速度 ,当 tempo=100是时以默认的速度播放。 errorCode := WavePlaySegment(fileName,tempo, fromSeconds, forSeconds, wait) 从指定的起始位置 (fromseconds) 开始播放指定播放长度(forseconds)的 MIDI 文件 .参数介绍如下 : fromseconds:以秒为单位指定文件的起始播放位置 forseconds:以秒为单位指定文件播放的长度 参数 wait的作用与 WavePlay()函数一致。 参数 tempo:指定 MIDI文件的播放速度 ,当 tempo=100是时以默认的速度播放 errorCode := MIDIStop() 停止播放当前的 MIDI文件 ,同时返回 MCI错误代码 ,无错时返回 0 errorCode := MIDIPause() 暂停播放当前的 MIDI文件 ,同时返回 MCI错误代码 ,无错时返回 0 errorCode := MIDIResume() 继续播放当前的 MIDI文件 ,同时返回 MCI错误代码 ,无错时返回 0 result := MIDIPlaying() 监控 MIDI 文件的播放状态 ,如正在 播放 ,返回 True值 ,否则返回False值 CD 控制函数 函数名及使用语法 函数功能 errorCode:=CDPlay(track,wait) 从头到尾播放 track指定音轨上的内容 参数 wait的作用与 WavePlay()函数一致。 errorCode := CDPlaySegment(track, fromSeconds, forSeconds, wait) 从指定的起始位置 (fromseconds) 开始播放指定播放长度(forseconds)的 CD 音轨 .参数介绍如下 : fromseconds:以秒为单位指定文件的起始播放位置 forseconds:以秒为单位指定文件播放的长度 参数 wait的作用与 WavePlay()函数一致。 errorCode := CDStop() 停止播放当前的音轨 ,同时返回 MCI 错误代码 ,无错时返回 0 errorCode := CDPause() 暂停播放当前的音轨 ,同时返回 MCI 错误代码 ,无错时返回 0 errorCode := CDResume() 继续播放当前的音轨 ,同时返回 MCI 错误代码 ,无错时返回 0 result := CDPlaying() 监控 CD 音轨的播放状态 ,如正在播放 ,返回 True值 ,否则返回False值 result := CDCurrentPosition() 以字符串的形式返回 CD 的当前位置 ,返回的格式是 tt:mm:ss:ff tt 为音轨号。 mm 为分钟数。 ss 为秒数。 ff 为帧号。 errorCode := CDEject() 将 CD 片退出光驱 errorCode := CDRetract() 将 CD 片移回光驱 Condition:=CDDiscpresent() 检测光驱中是否有 CD 盘片 ,如有返 回 TRUE,没有返回 FALSE result := CDLength() 以秒为单位返回当前 CD 的总长度 ,如果出错返回 0 result := CDTracks() 返回当前 CD 盘片上的总轨数 result := CDTrackLength(track) 以秒为单位返回当前 CD 中指定音轨的长度 第三节 利用外部函数制作实例 一、利用 制作子菜单和右键快捷菜单 函数的主要功能有以下几种: 制作下拉列表 制作弹出式菜单 调用文件选择对 话框 字体下拉列表 调用带预览功能的图形文件打开对话框 调用文件保存对话框 这里只介绍 中制作弹出式菜单的三个函数,其功用和函数语法如下表: 函数语法 pupupHandle:=tMsCreatePopupList(windowHandle) 函数功能和参数 取得 windows 句柄,并把它赋给自定义变量 pupupHandle 函数语法 Result:=tMsAddItem(ControlHandle, menuItemNo, submenuItemNo, menuText) 函数功能和参数 设置各菜单的名称、。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。