//播放声音 import fsys.dlg; import win.ui; /*DSG{{*/ var winform = win.form(text="播放声音";right=506;bottom=186;border="dialog frame";max=false;min=false) winform.add( btnActiveMovie={cls="button";text="ActiveMovie 播放声音";left=273;top=74;right=482;bottom=106;z=5}; btnMessageBeep={cls="button";text="系统警报声";left=29;top=132;right=171;bottom=164;z=2}; btnMp3={cls="button";text="播放 MP3";left=29;top=19;right=171;bottom=51;z=4}; btnWav={cls="button";text="播放 WAV 文件";left=188;top=19;right=330;bottom=51;z=3}; btnWmpOcx={cls="button";text="WMPlayer.OCX 播放网络 MP3";left=29;top=74;right=260;bottom=106;z=1} ) /*}}*/ import fsys.media; winform.btnWav.oncommand = function(id,event){ var path = fsys.dlg.open("*.wav|*.wav||"); if(!path) return; import fsys.media; fsys.media.playSound(path); } import fsys.media; winform.btnMp3.oncommand = function(id,event){ var path = fsys.dlg.open("*.mp3|*.mp3||"); if(!path) return; if(mediaFile) { mediaFile.stop(); } mediaFile = fsys.media(path); if(mediaFile) { mediaFile.play(); } } winform.btnWmpOcx.oncommand = function(id,event){ import com.wmPlayer;// 只能用于界面线程 com.wmPlayer.url = "http://download.aardio.com/v10.files/demo/mp3/lrc.mp3" /* com.wmPlayer 是用 com.CreateObject("WMPlayer.OCX") 创建的 COM 对象。 关于 WMPlayer.OCX : https://learn.microsoft.com/zh-cn/previous-versions/windows/desktop/wmp/object-model-reference-for-scripting */ } winform.btnActiveMovie.oncommand = function(id,event){ var path = fsys.dlg.open("*.mp3|*.mp3||"); if(!path) return; //参考接口定义:"\lib\vc6\.vc\Include\IAMOVIE.IDL" var axMovie = com.CreateObject("AMOVIE.ActiveMovieControl") axMovie.FileName = path; } winform.btnMessageBeep.oncommand = function(id,event){ //播放系统警报声 //声音排队后,MessageBeep 函数将控制权返回给调用函数,并异步播放声音。 //Win7 以及之后系统使用默认声音设备(通常是声卡) ::User32.MessageBeep(0x10/*_MB_ICONHAND*/); //峰鸣器奏乐: file://~/example/Media/Audio/Beep.aardio //峰鸣声,Win7 以及之后系统使用默认声音设备(通常是声卡),早期系统使用主板峰鸣器。 ::Kernel32.Beep(550,500); } winform.show() win.loopMessage();