如题,谢谢

解决方案 »

  1.   

    调用声音文件的VB函数     多媒体软件中,声音是重要组成部分。而VB中却没有直接调用声音文件的语句。于是笔者在VB5.0中定义了一个调用声音文件函数。调用此函数时只需带上不同的参数,就能执行不同的声音文件并发出各种声音。利用此函数在编制多媒体软件时可以带来很大方便。
        定义调用声音文件函数时用到了Windows播放声音的API函数。现先将此API函数作简单介绍sndPlaySound(参数1,参数2)其中:参数1描述要播放的声音文件的位置和文件名;参数2的取值能决定播放声音的模式。参数2的主要取值介绍如下:
        取&H0时:为同步播放模式;
        取&H1时:为异步播放模式;
        取&H2时:当声音文件未找到就停止播音返回;
        取&H8时:为循环播放模式。
        当调用函数成功,就播放有关声音文件,并且函数的返回值为非0;函数调用失败,函数的返回值为0。
        定义调用声音文件函数的具体步骤如下:
        ①在C盘根目录上建立一个名为Sound的文件夹,在此文件夹中放入5个你所需要的声音文件;
        ②在VB5.0状态进入“工程”菜单中的“添加模块”再选用“新建”中的“模块”;
        ③在模块的“通用”中输入下面代码,进行调用API函数的声明;
         Declare Function sndPlaySound Lib "winmm.dll" Alias
        “sndPlaySoundA" (ByV al lpszSoundName As String, ByVal uFlags As Long) As Long
         Dim fil As String
        ④在模块中输入以下代码,定义调用声音文件函数。
        Public Function sound(n As Integer) As Integer
        Dim x As Integer
        Select Case n
        Case 1
        fil = "c:\sound\beep3.wav"
        x = sndPlaySound(0, 0)
        x = sndPlaySound(fil, &H1 Or &H2)
        sound = x 
        Case 2
        fil = "c:\sound\hit8.wav"
        x = sndPlaySound(0, 0)
        x = sndPlaySound(fil, &H1 Or &H2)
        sound = x
        Case 3
        fil = "c:\sound\net7.wav"
        x = sndPlaySound(0, 0)
        x = sndPlaySound(fil, &H1 Or &H2)
        sound = x
        Case 4
        fil = "c:\sound\out12.wav"
        x = sndPlaySound(0, 0)
        x = sndPlaySound(fil, &H1 Or &H2)
        sound = x
        Case 5 
        fil = "c:\sound\spin5.wav"
        x = sndPlaySound(0, 0)
        x = sndPlaySound(fil, &H1 Or &H2)
        sound = x
        Case Else
        sound = 0
        End Select
        End Function
        新定义的调用声音函数格式为:sound(n),其中n的取值为1至5的正整数。利用此函数可调用5个不同的声音文件。下面是使用sound函数的演示程序: 
        ①如图在form窗口设置6个命令控件;
        ②在这些命令控件的Click事件中入分别输入以下代码。 
        Private Sub Command1_Click()
        l = sound(1)
        End Sub
        Private Sub Command2_Click()
        l = sound(2)
        End Sub
        Private Sub Command3_Click()
        l = sound(3)
        End Sub
         年Private Sub Command4_Click()
        l = sound(4)
        End Sub
        Private Sub Command5_C lick()
         End Sub
        Private Sub Command6_Click()
        End
        End Sub
        运行程序后,单击有关按钮就能调用所指定的声音文件,发出各种声音。
        (江苏苏州市景范中学 赵旭 215005)
        选择字段浏览程序
        虽然FoxPro系统给我们提供USE、BROW命令来打开数据库进行浏览,如果是浏览指定的数据库文件和全部字段还比较方便,当频繁打开不同目录的数据库文件或只想浏览部分字段时,使用上述过程就显得力不从心了。下面这个小程序可以把当前硬盘和软盘所有目录下的数据库文件列出,当您选择到一个数据库文件后,又将库中所有字段列出,您可以有选择地进行浏览,从而使数据库选择字段浏览相当简便。
        SET TALK ON
        SET COLO TO W/N,R/B,R && 使选择字段时, 屏幕显示所选的字段
        SET COLOR OF SCHEME 2 TO BG/W,N/W,N/W,B/W,B/BG,W+/R,GR+/W,N+/N,B/W,W/N,+
        DO WHIL .T.
        DEFINE POPUP database FROM 2,10 to 15,30 PROMPT FILES LIKE *.dbf colo sche 2;
        MESSAGE “移动↑↓光标键,选择数据库文件目录,其它键退出”
        ON SELECTION POPUP database DO Database
        DEFINE POPUP fieldlist FROM 2,26 TO 15,46 PROMPT STRUCTURE MARGIN;
        MESSAGE “按<ENTER>选择字段,然后按<ESC>进行浏览”
        ON SELECTION POPUP fieldlist DO Fieldlist
        CLEAR 
        @ 1,11 SAY “ 选择一个数据库:” COLO B/G
        ACTIVATE POPUP database
        @ 1,11 SAY “ ” COLO N/N 
        IF NOT EMPTY(DBF()) && 如果选择了一个数据库
        @ 1,29 SAY “ 选择数据库字段:”COLO R/G
        mfieldlist =“ ” && 字段选择变量
        ACTIVATE POPUP fieldlist&&激活菜单显示数据库字段
        IF NOT EMPTY(mfieldlist)
        mfieldlist = “FIELDS ” + LEFT(mfieldlist, LEN(mfieldlist)-1)
        *在字段选择变量中增加 “FILEDS”, 并除去尾部逗号. 
        ENDIF
        BROWSE &mfieldlist COLO R+/BG+
        * 浏览所选择的数据库和所选择的字段
        ENDIF
        RELEASE POPUP database, fieldlist
        CLEA
        XX=" "
        @ 23,24 SAY "还继续浏览数据库吗(y/Y)?" GET XX COLO B+/W
        READ
        IF UPPER(XX)="Y".OR.XX="Y"
        LOOP
        ELSE
        EXIT
        ENDIF
        ENDDO
        SET TALK OFF
        CLOSE DATABASE
        QUIT
        RETURN
        * Process database file list selection
        PROCEDURE Database
         USE PROMPT() 
    && 打开所选择的数据库
        DEACTIVATE POPUP database
        RETURN
        PROCEDURE Fieldlist
        IF NOT PROMPT() $ mfieldlist
        mfieldlist = mfieldlist + PROMPT() + ","
        * 在字段选择变量中增加字段和逗号
        ENDIF
        RETURN
        (河北省邯郸市峰峰矿务局 左巍 056207)
     
      

  2.   

    推荐:book://ssreader/e0?url=http://192.168.0.6/jsj/js186/12/!00001.pdg&&candownload=1&downloadreg=0&canprint=1&bookname=多媒体计算机系列丛书
    ※ 多媒体计算机系列丛书 多媒体计算机声卡技术及应用
    发表评论  添加个人书签
    作者:周敬利 余胜生 等   索书号:TP334/Z81 出版日期:1998年12月第1版  页数:307 
      

  3.   

    贴错了
    是:book://ssreader/e0?url=http://202.120.96.59/48/diskjsj/js259/21/!00001.pdg&1&1&1&1&pages=317&bookname=多媒体技术丛书之三%20Microsoft%20Windows%20多媒体程序员参考手册&ssnum=10274979
    多媒体技术丛书之三 Microsoft Windows 多媒体程序员参考手册 
    阅读   下载   发表评论   添加个人书签
    作者:吴新瞻 陈卉 陈正康   SS号:10274979   索书号:TP311.56/WXE/1   出版日期:1993年6月第1版  页数:317