VB中多媒体五种控制手段

大猪头123baby

大猪头123baby

2016-02-19 12:27

下面请跟着图老师小编一起来了解下VB中多媒体五种控制手段,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!
计算机的多媒体技术已经广泛普及,相应的在计算机编程领域中又多出了一个多媒体控制技术,对于一般的用户来说,采用可视化编程工具是最好的选择,VB就是其中一个典型的代表。在VB中一般有三种方法可以对多媒体对象进行控制,其方法各具特色,下面简单介绍VB多媒本几种控制方法的具体过程。

----一、OLE控制方法

----VB是一个优秀的可视编程工具,全面支持对象的链接与嵌入OLE,利用此技术可以方便的把声音、图片、文本或动态图像嵌入WINDOWS程序中,以实现多媒体控制功能。OLE的具体操作过程如下:启动VB4.0后,在窗口中安放一个OLE控件,之后弹出窗口列出了全部可链接或嵌入的对象内容,此时可选择"新建"或"由文件创建",如果只想把现成的文件内容如声音文件、BMP图像文件等作为对象,可选择"由文件创建"项,此时可通过"浏览"找到指定的文件,还有一个重要的选项,就是"链接"项,选择此项有效,则指定的文件只建立与程序进行链接,否则是把该文件的副本嵌入程序之中;如果你想自己录制声音或绘制图片,则可选择"新建"项,在列表中选定指定的链接或嵌入对象,之后系统会自动打开相应的编辑工具,进入编辑状态。在所列出的对象中,多媒体占有很多项,如声音、MIDI音乐、等,还有一个综合性质的“媒体剪切”,通过此项可完成所有多媒体对象的操作,包括CD唱盘及MPEG对象等。选定对象之后,如果你想更换链接或嵌入的对象,则可用鼠标右键单击OLE对象,在弹出的菜单中选择"Insertobject"项,会重新进入对象选择窗口。之后的任务就是利用程序代码来控制OLE对象,通用的指令是:

OLE1.Verb=0;代表直接播放
  OLE1.Action=7;代表直接驱动OLE
  如果改为如下指令:
  OLE1.Verb=-1;代表进入编辑状态
  OLE1.Action=7
  

----则启动OLE1时会调出相应的工具软件进行播放并允许进行编辑;用此方法控制多媒体最显著的优点就是,操作非常简单,缺点是运行时需要频繁的磁盘交换过程,运行速度较慢。

----二、MCI(MMControl)控制方法

----MMControl是一个专用的多媒体控件,在VB缺省状态的部件箱中并没有此项,必须进行手工填加,在VB5.0中可通过"工程"菜单中的"部件"项打开选择窗口,并选中“MICROSOFTMULTIMEDIACONTROL”项,之后在部件箱中即可出现“MMCONTROL”图标,用此控件控制多媒体的基本步骤是指定媒体对象、打开媒体对象、控制媒体对象等,比如编制CD唱盘的播放程序,可用鼠标点亮此MCI图标,并在FROM1窗体中绘制一个长方形的区域,此时一组功能齐全的播放按钮出现在窗口中,然后双击窗体空白处,打开From1的代码窗口,此时输入以下命令:

MMcontrol1.DeviceType="CDAudio"
  MMcontrol1.command="OPEN"
  

----运行程序之后,窗口中的有关按钮变成深色,说明已经能够正常使用,按下PLAY键,美妙的音乐就会随之送出;使用此方法控制多媒体,首先要了解系统中的媒体设备种类和具体的设备名称,具体可通过WINDOWS目录中的SYSTEM.INI文件中得到,其[MCI]小节等号前面即为各种多媒体驱动程序类型,可直接用MMcontrol1.DeviceType命令打开,如果涉及多媒体文件还必须指明具体的文件名,比如指定一个WAV文件:

MMcontrol1.DEVICETYPE="WaveAudio"
  MMcontrol1.FILENAME="C:WINDOWSMEDEL.WAV"
  

----一般只要使用OPEN命令打开媒体对象后,MCI控件所提供的组合按钮就会发挥作用,此时可以利用这些按钮进行各种播放控制,此外,还可以利用MCI所提供的特殊属性进行更加灵活的控制,具体使用方法请参考有关资料;此方法是进行多媒体程序设计的最常用的方法,它具有较简单的操作特点,而又可以进行较细致的操作控制和较高的运行速度,适合于大部分场合的多媒体程序设计。

----三、API函数控制方法

----在VB中要实现更复杂的控制则必须依靠WINDOWS的API函数,高级的多媒体程序设计同样也离不开WINDOWSAPI函数的参与,调用API函数之前必须对所要用的函数进行说明,可通过"APITEXTVIEWER"程序直接拷贝。在多媒体程序设计中常用的API函数如下:

----mciExecute():这是一个最简单的函数,只有一个参数即MCI指令字符串,当出现错误时将自动弹出对话框;

----mciSendString():功能上与上面的函数相同,但它可以传送相应的信息给应用程序,使用时需要四个参数,第一个是MCI命令字符串,第二个是缓冲区,第三个是缓冲区长度,第四个在VB中可恒置为0;

----mciGetErrorString():说明上一个命令所传回的错误代码所表示的意义;

----Parse():处理所传送回来的文字信息,一般可通过VB的instr函数配合搜索指定的字符串;

----下面的代码对TEST.WAV文件分别进行打开、播放、停止、关闭等控制:

I=mciExecute("open"test.wav"aliassound")
  I=mciExecute("playsound")
  I=mciExecute("stopsound")
  I=mciExecute("closesound")
  

----还存在一个专用的多媒体控制函数,就是SndPlaySound(),此函数是一个可独立播放WAV语音文件的函数,使用相对来说较为简单,下面的例子可直接播放TEST.WAV文件:

I=SndPlaySound("test.wav",1)
  

----在实际应用中,还涉及很多具体的编程细节,比如播放进度的显示、播放进度的改变、视频播放的窗口控制、播放界面的设计等等,由于API函数具有VB本身所不具有的优越性,所以用此方法可编制出具有高水准的多媒体控制程序及专业程序。

----四、MCIWnd控件方法

----在VB5.0中还存在一个MCIWnd控件,此控件也可实现多媒体的简单控制,使用很方便,具体方法,通过"工程"菜单的"部件"项打开选择窗口,选中其中的"MCIWndXControl"项,之后在部件箱中即出现一个电影胶片式的图标,在窗体中安放此控件,之后可通过属性窗口指定媒体对象,也可用程序代码实现,比如在下面的事件中输入如下代码:

PrivateSubForm_Load()
  MCIWnd1.filename="d:mpg98.mpg"
  MCIWnd1.Command="open"
  MCIWnd1.Command="play"
  EndSub

----程序运行之后即可直接播放98.MPG文件,如果省略其中的"PLAY"命令,则运行之后不播放但可通过下面的控制按钮进行播放,并且可通过进度条调整进度,此控件还有一些常用属性可用,比如:

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

Volume:控制声音输出的音量;
  AutosizeWindow:是否自动调整窗口大小;
  AutosizeMovie:是否自动调整播放图像的大小;
  repeat:是否重绕;
  playbar:是否显示控制条;
  

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

----此方法具有操作简单、运行速度快的特点,但其控制手段太少,不适合编制专用的多媒体播放程序,但对于一些要求不高的场合,比如在程序嵌入活动图像等非常适合。

----五、ActiveMovie控件方法

----ActiveMovie是微软公司开发的活动图像播放程序,如果系统中正确安装了此程序,则即提供ActiveMovie控件,使用前也必须通过"部件"选择窗口选定此控件,此控件的使用更为简单,只要在窗体中安放一个此控件,然后通过属性窗口或程序代码指定一个移动图像文件,比如:

PrivateSubForm_Load()
  ActiveMovie1.filename="d:mpg98.mpg"
  EndSub

----运行程序之后即可通过其控制条进行播放控制,其使用方法就和使用其原来的ActiveMovie一样,如果想使其运行之后自动播放,则需要使用置其ActiveMovie1.AutoStart属性为"True",但此属性只能在窗口中进行调整,不能用程序代码进行控制,此外还有下面的一些常用属性:

Showcontrols:是否显示控制条;
  showdisplay:是否出现显示窗口;
  ShowpositionControls:是否显示向前或向后按钮;
  ShowTracker:是否显示进度条;
  Showselectioncontrols:是否显示记录设置按钮;
  FullscreenMode:是否进入满屏模式;
  moviewindowsize:是否调整播放窗口的尺寸;

----此控件由于是微软公司自行开发的,并且已经内嵌在WINDOWS95的OSR版本及WWINDOWS98测试版中,其性能是相当稳定和可靠的,能够对WINDOWS95及其32位的光盘驱动器最大限度兼容,具有很多优势,但其它控制功能的灵活性稍差一些,一般只允许对单个文件进行播放,应用在简单的程序设计场合比较合适。

->

展开更多 50%)
分享

猜你喜欢

VB中多媒体五种控制手段

编程语言 网络编程
VB中多媒体五种控制手段

在VB中用API实现多媒体

编程语言 网络编程
在VB中用API实现多媒体

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Delphi中多媒体组件使用解析

编程语言 网络编程
Delphi中多媒体组件使用解析

VB环境多媒体压缩数据流播放技术

编程语言 网络编程
VB环境多媒体压缩数据流播放技术

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

PowerPointXP处理多媒体技巧

办公软件
PowerPointXP处理多媒体技巧

HTML之多媒体

Html CSS布局 Div+CSS XHTML
HTML之多媒体

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

VB中远程数据库的访问(1)-数据连接

VB中远程数据库的访问(1)-数据连接

Java的网络知识

Java的网络知识
下拉加载更多内容 ↓