MultimediaMCI控件
以下内容摘自msdnMultimedia MCI
Multimedia MCI包含一组高层次的独立于设备的命令,可以控制音频和视频外设。首先发送的 MCI 命令就是 Open。这条命令打开规定的 MCI 设备,标识将要在设备上播放或记录的文件。有些设备,如 CDAudio、VCR 和视盘等,并不使用文件,所以无需提供文件名。
设备打开后,可以发送任何其它的 MCI 命令(如 Prev、Next、Pause 等)。Close 命令是向设备发送的最后一条 MCI 命令,它返回到可用的系统资源缓冲池,Close 命令还关闭与设备相关的数据文件。
Multimedia MCI 控件常数
模式常数
常数
值
描述
ciModeNotOpen
524
设备没有打开。
mciModetop
525
设备停止。
mciModePlay
526
设备播放。
mciModeRecord
527
设备记录。
mciModeeek
528
设备搜索。
mciModePause
529
设备暂停。
mciModeReady
530
设备准备好。
通知常数
常数
值
描述
mciNotifySuccessful
1
命令成功地完成。
MciNotifySuperseded
2
命令被其它命令所替代。
MciAborted
4
命令被用户终止。
MciFailure
8
命令失败。
方向常数
常数
值
描述
mciOrientHorz
0
按钮水平排列。
mciOrientVert
1
按钮垂直排列。
记录模式常数
常数
值
描述
mciRecordInsert
0
插入记录模式。
mciRecordOverwrite
1
改写记录模式。
格式常数
常数
值
描述
mciFormatMilliseconds
0
毫秒格式。
mciFormatHms
1
小时数、秒数和分钟数格式。
mciFormatMsf
2
分钟数、秒数和帧格式。
mciFormatFrames
3
帧格式。
mciFormatSmpte24
4
24-帧 SMPTE 格式。
mciFormatSmpte25
5
25-帧 SMPTE 格式。
mciFormatSmpte30
6
30-帧 SMPTE 格式。
mciFormatSmpte30Drop
7
30-drop-帧 SMPTE 格式。
mciFormatBytes
8
字节格式。
mciFormatSamples
9
示例格式。
mciFormatTmsf
10
曲目数、分钟数、秒数和帧格式。
示例(Multimedia MCI 控件)Visual Basic 示例
下面的示例演示了打开一台使用兼容数据文件的 MCI 设备的过程。将这些代码放到 Form_Load 过程,应用程序就可以使用Multimedia MCI控件来对文件 Gong.wav 进行 播放、记录和倒带。在试运行这个示例之前,首先应创建一个包含Multimedia MCI控件的窗体。
Private Sub Form_Load () ' Set properties needed by MCI to open. MMControl1.Notify = FALSE MMControl1.Wait = TRUE MMControl1.Shareable = FALSE MMControl1.DeviceType = "WaveAudio" MMControl1.FileName = "C:WINDOWSMMDATAGONG.WAV" '打开 MCI WaveAudio 设备。 MMControl1.Command = "Open"End Sub为了正确管理多媒体资源,在退出应用程序之前,应该关闭那些已经打开的 MCI 设备。将下面的语句放到 Form_Unload 过程,那么在退出包含Multimedia MCI控件的窗体之前,就可以关闭那些已经打开的 MCI 设备。
Private Sub Form_Unload (Cancel As Integer) MMControl1.Command = "Close"End SubNotify 属性(Multimedia MCI 控件)
决定下一条MCI命令是否使用 MCI 通知服务。如果它被设置为True,那么Notify属性在下一条MCI命令完成时产生一个回调事件 (Done)。在设计时,该属性不可用。
语法
[form.]MMControl.Notify[ = {True|False}]
说明
下表列出了Multimedia MCI控件的Notify属性的设置值。
设置值
描述
False
(缺省值)下一条命令不产生 Done 事件。
True
下一条命令产生 Done 事件。
赋给该属性的值只对下一条MCI命令有效。后面的MCI命令会一直忽略Notify属性,除非赋给它另外一个值(不同的或可标识的)。
注意如果发送了一条新的命令阻止上一命令设置的回调条件,那么通知消息就会被终止。例如,一台暂停的设备不支持MCI Resume命令,为了重新打开它,Multimedia MCI控件向它发送Play命令。Play命令将重新设置回调条件,替代上一命令的回调条件并挂起通知。
数据类型
Integer (Boolean)