⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vbtips1.htm

📁 所有我收藏的VB技巧
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<html>

<head>
<meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80">
<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
<title>VBTips1</title>
</head>

<body>

<h1 align="center"><a name="top"></a>VB技巧<font size="5"><strong>(2)</strong></font><font
size="5" face="楷体_GB2312"><b>-</b></font><font
color="#FF0000">多媒体处理</font></h1>

<blockquote>
    <p><strong>1 </strong><a href="#音效档播放程式"><strong>音效档播放程式</strong></a><strong>
    <br>
    2 </strong><a href="#如何用API播放CD"><strong>如何用API播放CD</strong></a><strong>
    <br>
    3 </strong><a
    href="#如何用API及MMSYSTEM.DLL播放AVI文件"><strong>如何用API及MMSYSTEM.DLL播放AVI文件</strong></a><strong>
    <br>
    4 </strong><a
    href="#如何用API及MMSYSTEM.DLL播放WAV文件"><strong>如何用API及MMSYSTEM.DLL播放WAV文件</strong></a><strong>
    <br>
    5 </strong><a href="#怎样检查声卡的存在"><strong>怎样检查声卡的存在</strong></a><strong>
    <br>
    6 </strong><a href="#如何从sound"><strong>如何从&quot;
    SOUND.DRV&quot;中提取声音</strong></a><strong> <br>
    7 </strong><a href="#如何播放WAV文件"><strong>如何播放WAV文件</strong></a><strong>
    <br>
    </strong></p>
</blockquote>
<div align="center"><center>

<table border="0" width="88%">
    <tr>
        <td width="80%"><p align="left"><a
        href="vbtips.htm#Return">[1]</a> [2] <a
        href="vbtips2.htm">[3]</a> <a href="vbtips3.htm">[4]</a> <a
        href="vbtips4.htm">[5]</a> <a href="vbtips5.htm">[6]</a> <a
        href="vbtips7.htm">[7]</a> <a href="#home">[8]</a> <a
        href="vbtips9.htm">[9]</a> <a href="vbtips10.htm">[10]</a></p>
        </td>
        <td><p align="right"><font size="2">第二页(共十页)</font></p>
        </td>
    </tr>
</table>
</center></div>

<hr>
<div align="center"><center>

<table border="0" cellspacing="1" width="88%">
    <tr>
        <td width="100%"><a name="音效档播放程式"></a><font
        size="4"><strong>音效档播放程式</strong></font><br>
        ------------------------------------------------------------------------
        <p>&nbsp;----所需物件:PictureBox(1),Label(6),CommandButton(2),CommonDialog(1),MMControl(1)。
        </p>
        <p>&nbsp;----程式码: </p>
        <p>Const INTERVAL = 1000 <br>
        Dim CurVal As Double </p>
        <p>Private Sub CmdEnd_Click() <br>
        &nbsp;&nbsp; MMControl1.Command = &quot;stop&quot; <br>
        &nbsp;&nbsp; MMControl1.Command = &quot;close&quot; <br>
        &nbsp;&nbsp; End <br>
        End Sub </p>
        <p>Private Sub CmdOpen_Click() <br>
        &nbsp;&nbsp; MMControl1.Command = &quot;stop&quot; <br>
        &nbsp;&nbsp; MMControl1.Command = &quot;close&quot; <br>
        &nbsp;&nbsp; Close #1 <br>
        &nbsp;&nbsp; On Error GoTo errhandler <br>
        &nbsp;&nbsp; CMDlg.Filter = &quot;音效档(*.wav;*.mid)
        |*.wav;*.mid&quot; <br>
        &nbsp;&nbsp; CMDlg.FilterIndex = 1 <br>
        &nbsp;&nbsp; CMDlg.Action = 1 <br>
        &nbsp;&nbsp; Open CMDlg.filename For Input As #1 <br>
        &nbsp; <br>
        &nbsp;&nbsp; If Right$(CMDlg.filename, 3) =
        &quot;wav&quot; Then <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MMControl1.DeviceType =
        &quot;waveaudio&quot; <br>
        &nbsp;&nbsp; Else <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MMControl1.DeviceType =
        &quot;sequencer&quot; <br>
        &nbsp;&nbsp; End If <br>
        &nbsp; <br>
        &nbsp;&nbsp; MMControl1.filename = CMDlg.filename <br>
        &nbsp;&nbsp; MMControl1.Command = &quot;open&quot; <br>
        &nbsp;&nbsp; CurVal = 0# <br>
        &nbsp;&nbsp; MMControl1.UpdateInterval = 0 <br>
        errhandler: <br>
        &nbsp;&nbsp; Exit Sub <br>
        End Sub </p>
        <p>Private Sub Form_Load() <br>
        &nbsp;&nbsp; Label1.Caption = &quot;音效档名:&quot;
        <br>
        &nbsp;&nbsp; Label2.Caption = &quot;总共时间:&quot;
        <br>
        &nbsp;&nbsp; Label3.Caption = &quot;目前位置:&quot;
        <br>
        &nbsp;&nbsp; MMControl1.UpdateInterval = 0 <br>
        End Sub </p>
        <p>Private Sub Form_Unload(Cancel As Integer) <br>
        &nbsp;&nbsp; Const MCI_MODE_NOT_OPEN = 524 <br>
        &nbsp;&nbsp; If Not MMControl1.Mode = MCI_MODE_NOT_OPEN
        Then <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MMControl1.Command =
        &quot;close&quot; <br>
        &nbsp;&nbsp; End If <br>
        End Sub </p>
        <p>Private Sub MMControl1_PauseClick(Cancel As Integer) <br>
        &nbsp;&nbsp; MMControl1.UpdateInterval = 0 <br>
        &nbsp;&nbsp; CurVal = CurVal <br>
        End Sub </p>
        <p>Private Sub MMControl1_PlayClick(Cancel As Integer) <br>
        &nbsp;&nbsp; MMControl1.UpdateInterval = INTERVAL <br>
        End Sub </p>
        <p>Private Sub MMControl1_PrevClick(Cancel As Integer) <br>
        &nbsp;&nbsp; CurVal = 0# <br>
        End Sub </p>
        <p>Private Sub MMControl1_StatusUpdate() <br>
        &nbsp; <br>
        &nbsp;&nbsp; MMControl1.TimeFormat = 0 <br>
        &nbsp;&nbsp; CurVal = CurVal + MMControl1.UpdateInterval
        + 54 </p>
        <p>&nbsp;&nbsp; Now_position = CurVal <br>
        &nbsp;&nbsp; Now_Min = Int(Now_position / 1000 / 60) <br>
        &nbsp;&nbsp; Now_Sec = Int(Now_position / 1000) Mod 60 <br>
        &nbsp;&nbsp; Total_Min = Int(MMControl1.Length / 1000 /
        60) <br>
        &nbsp;&nbsp; Total_Sec = Int(MMControl1.Length / 1000)
        Mod 60 <br>
        &nbsp; <br>
        &nbsp;&nbsp; Label4.Caption = MMControl1.filename <br>
        &nbsp;&nbsp; Label5.Caption = Format(Total_Min,
        &quot;00&quot;) + &quot;:&quot; + Format(Total_Sec,
        &quot;00&quot;) <br>
        &nbsp;&nbsp; Label6.Caption = Format(Now_Min,
        &quot;00&quot;) + &quot;:&quot; + Format(Now_Sec,
        &quot;00&quot;) </p>
        <p>&nbsp;&nbsp; If MMControl1.PlayEnabled = False And
        Now_Min = Total_Min And Now_Sec = Total_Sec Then <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CurVal = 0# <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MMControl1.UpdateInterval
        = 0 <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MMControl1.Command =
        &quot;prev&quot; <br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MMControl1.Command =
        &quot;stop&quot; <br>
        &nbsp;&nbsp; End If <br>
        End Sub </p>
        <p>Private Sub MMControl1_StopClick(Cancel As Integer) <br>
        &nbsp;&nbsp; CurVal = 0# <br>
        &nbsp;&nbsp; MMControl1.UpdateInterval = 0 <br>
        &nbsp;&nbsp; MMControl1.Command = &quot;prev&quot; <br>
        End Sub <br>
        <a href="#top">返回</a></p>
        <p><br>
        <a name="如何播放WAV文件"></a><font size="4"><strong>如何播放WAV文件</strong></font><br>
        '----------------------------------------------------------------
        <br>
        'Author: Dr. John A. Nyhart <br>
        ' <br>
        'How do I play a WAV file with VB? <br>
        '----------------------------------------------------------------
        <br>
        '*****************************************************************
        <br>
        Sub PlayWav(SoundName As String) <br>
        &nbsp; Dim tmpSoundName As String <br>
        &nbsp; Dim wFlags%, X% <br>
        &nbsp; <br>
        &nbsp; ' declare statements (Place in a bas module.) <br>
        &nbsp; ''********************************** <br>
        &nbsp; '#If Win32 Then <br>
        &nbsp; 'Public Declare Function sndPlaySound&amp; Lib
        &quot;winmm.dll&quot; Alias <br>
        &quot;sndPlaySoundA&quot; (ByVal lpszSoundName As String,
        ByVal uFlags As Long) <br>
        &nbsp; '#Else <br>
        &nbsp; 'Public Declare Function sndPlaySound% Lib
        &quot;mmsystem.dll&quot; (ByVal <br>
        lpszSoundName As String, ByVal uFlags As Integer) <br>
        &nbsp; '#End If 'WIN32 <br>
        &nbsp; ' ********************************** <br>
        &nbsp; ' WAV Sound values <br>
        &nbsp; 'Global Const SND_SYNC = &amp;H0 <br>
        &nbsp; 'Global Const SND_ASYNC = &amp;H1 <br>
        &nbsp; 'Global Const SND_NODEFAULT = &amp;H2 <br>
        &nbsp; 'Global Const SND_LOOP = &amp;H8 <br>
        &nbsp; 'Global Const SND_NOSTOP = &amp;H10 <br>
        &nbsp; ' ********************************** <br>
        &nbsp; <br>
        &nbsp; ' *** pathWavFiles is a var with the subDir where <br>
        &nbsp; '&nbsp;&nbsp;&nbsp;&nbsp; the sound files are
        stored <br>
        &nbsp; tmpSoundName = pathWavFiles &amp; SoundName <br>
        &nbsp; <br>
        &nbsp; wFlags% = SND_ASYNC Or SND_NODEFAULT <br>
        &nbsp; X% = sndPlaySound(tmpSoundName, wFlags%) <br>
        &nbsp; <br>
        End Sub <br>
        <a href="#top">返回</a></p>
        <p><br>
        <a name="如何用API及MMSYSTEM.DLL播放WAV文件"></a><font
        size="4"><strong>如何用API及MMSYSTEM.DLL播放WAV文件</strong></font></p>
        <p>'Author: Gordon F. MacLeod <br>
        'How to play a .WAV file using API and the MMSYSTEM.DLL. <br>
        '-------------------------------------------------------------------
        <br>
        ' Declare this API and these Constants in a .BAS file: </p>
        <p>Declare Function sndPlaySound% Lib
        &quot;MMSYSTEM.DLL&quot; (ByVal lpszSoundName$, <br>
        ByVal wFlags%) </p>
        <p>&nbsp;&nbsp; Global Const SND_SYNC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        = &amp;H0000 <br>
        &nbsp;&nbsp; Global Const SND_ASYNC&nbsp;&nbsp;&nbsp;&nbsp;
        = &amp;H0001 <br>
        &nbsp;&nbsp; Global Const SND_NODEFAULT = &amp;H0002 <br>
        &nbsp;&nbsp; Global Const SND_LOOP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        = &amp;H0008 <br>
        &nbsp;&nbsp; Global Const SND_NOSTOP&nbsp;&nbsp;&nbsp; =
        &amp;H0010 </p>
        <p>' Paramaters: </p>
        <p>' lpszSoundName$ </p>
        <p>' Specifies the name of the sound to play. The
        function first <br>
        ' searches the [sounds] section of the WIN.INI file for
        an entry <br>
        ' with the specified name, and plays the associated
        waveform sound <br>
        ' file. If no entry by this name exists, then it assumes
        the <br>
        ' specified name is the name of a waveform sound file. If
        this <br>
        ' parameter is NULL, any currently playing sound is

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -