关键:WindowsAPI函数:sndPlaySoundA和waveOutGetNumDevs 新建标准(Standard)用户自定义对象(user object)uo_command,在“Select Standard Visual Type”框中选择“commandbutton”。 在用户对象中, 1)定义Local External Functions,主要用到了两个API函数:sndPlaySoundA和waveOutGetNumDevs。 Function boolean sndPlaySoundA (string SoundName, ulong Flags) Library "WINMM.DLL" Function ulong waveOutGetNumDevs () Library "WINMM.DLL" 2)定义实例变量(Instance Variables): string is_soundfile = default.wav,其中,“default.wav”为按扭默认发出的声音。 3)定义用户事件:ue_setsoundfile(无须填事件ID),主要用于设置您需要播放的文件名,例如 : is_soundfile = xxx.wav ,按扭就播放文件名为 xxx.wav的声音文件。在用户在窗口中加入该控件(用户对象)时使用,以修改按扭的播放声音。 定义完以上几项后,在按扭的Clicked事件中写入: //修改播放声音文件 This.TriggerEvent("ue_setsoundfile") //开始播放Wav ulong lul_numdevs lul_numdevs = WaveOutGetNumDevs() If lul_numdevs $#@62; 0 Then sndPlaySoundA(is_soundfile, 1) End If 到此便大功告成。你只需在窗口中加入该对象,在ue_setsoundfile事件中写入is_soundfile = xxx.wav,会发声的按扭便OK了。
|