示例多媒体类

在 Visual FoxPro 的 Samples\Classes\Samples.vcx 类库中,有两个类(SoundPlayer 和 VideoFrame)可允许您使用 MCI(多媒体命令界面)来执行多媒体文件。

MCI 命令的文档在 Windows SDK Multimedia Programmer's Reference 的第七章中。

声音播放类

可以用此类来执行一个非可视的多媒体文件,如一个 .WAV 声音文件。他允许您指定要执行的文件,然后提供内部方法程序可方便地执行这个媒体文件。

属性 说明
AutoOpen 指定当对象实例化时,是否自动打开并显示声音文件。默认值为“真”(.T.)。
AutoPlay 指定当打开声音文件时,是否自动执行此文件。默认值为“真”(.T.)。
AutoRepeat 指定是否连续执行声音文件。默认值为“假”(.F.)。
ControlSource 指定引用声音文件的列。如果为空,此类需要在 SoundFile 属性中有一个静态的文件名字。
MCIAlias 指定 MCI 所用的一个别名。如果为空,别名默认为类的 Name 属性。通常它都是空的,但如果用户想同时执行两次同一个声音文件,而需要分别为每次指定不同的别名。
SoundFile 保存要运行的声音文件名字,如“C:\WINDOWS\CHIMES.WAV

方法程序 说明
OpenSound 打开声音文件。
PlaySound 运行声音文件。在运行该文件之前,必须使用 OpenSound 方法程序打开此文件。
PauseSound 暂停运行声音文件。当调用 PlaySound 方法程序时,可继续执行。
SetPosition 允许用户指定媒体文件的位置。在打开该文件之后,可以在任何时刻执行它。其有效值为“Start”、“End”或声音的指定毫秒。
CloseSound 关闭声音文件,并释放所使用的全部资源。

VideoFrame 类

可以用 VideoFrame 类来执行一个可视的多媒体文件,如一个 Windows 的视频文件。它允许您指定要执行的文件的位置和大小,然后提供内部方法程序可方便地执行这个媒体文件。

有关使用此类的示例,请参阅 Visual FoxPro 目录下的 Samples\Solution\Forms 目录的 Video.scx 文件。

属性 说明
AutoOpen 指定当对象实例化时,是否自动打开并显示视频文件。默认值为“真”(.T.)。
AutoPlay 指定当打开视频文件时,是否自动执行此文件。默认值为“真”(.T.)。
AutoRepeat 指定是否循环执行此视频文件,该属性设置为“真”(.T.),会循环执行此视频文件。默认值为“假”(.F.)。
ControlSource 指定引用视频文件的一个字段。如果为空,此类需要在 VideoFile 属性中有一个静态的文件名字。
MCIalias 指定 MCI 所用的一个别名。如果为空,别名默认为类的 Name 属性。通常它都是空的,但如果用户想同时执行两次同一个视频文件,而需要分别为每次指定不同的别名。
VideoFile 保存要运行的视频文件名字,如“C:\VFP\SAMPLES\SOLUTION\FORMS\FOX.AVI

方法程序 说明
CloseVideo 关闭视频文件,并释放所使用的全部资源。
DoMCI 由其他的方法程序调用,来执行 MCI 命令。用户也可以调用它,来执行一个指定的 MCI 命令。
OpenVideo 打开视频文件,并显示第一帧。
PauseVideo 暂停运行视频文件。当调用 PlayVideo 方法程序时,可继续执行。
PlayVideo 运行视频文件。在运行该文件之前,必须使用 OpenVideo 方法程序打开此文件。
SetPosition 允许用户指定媒体文件的位置。在打开该文件之后,可以在任何时刻执行它。其有效值为“Start”、“End”或视频的指定毫秒。