主题:  这段程序的含义

cctt

职务:普通成员
等级:1
金币:0.0
发贴:2
#12005/2/21 20:52:14
谁能告诉我这段程序的含义呀?
Checked@"音乐开/关":=~music_button
Test(music_button,music_button:=0,music_button:=1)
Test( ~music_button&~MIDIPlaying(),MIDIPlay(FileLocation^"music\\music"^Round(Random(1,6,1),2)^".mid",100, 0),MIDIStop())



liurulin

职务:普通成员
等级:2
金币:3.0
发贴:339
#22005/2/23 8:22:16
这是个音乐开关按钮控制程序
Checked@"音乐开/关"表示按钮的核选状态
“music_button ”是自定义变量,“~”表示对其后逻辑型变量进行取反操作
Test是系统函数,格式:Test(condition, true expression [, false expression])。该函数的功能是,当 condition的值为TRUE时,Authorware 计算true expression中的表达式,当condition 的值为FALSE时,Authorware 计算false expression中的表达式

其中的“MIDIPlaying、MIDIPlay、MIDIStop”属于a5wmme.u32,含义分别为:
MIDIPlaying:查询目前是否有MIDI音乐在播放,若有则函数的值为True
MIDIPlay:播放参数filename指定的MIDI文件,参数tempo表示播放的节拍,若数值为100则表示正常播放。参数wait的值为一个逻辑值,为True表示声音在播放时,Authorware暂停执行,等MIDI音乐播放结束后再继续;为False则表示当MIDI音乐在播放时,Authorware继续往下执行。

MIDIStop:停止当前MIDI音乐的播放。

“~music_button&~MIDIPlaying()”是表示当前没有声音被播放且按钮处于核选状态或相反