大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> 程序开发 -> VB中用Multimedia MCI控件开发多媒体应用

VB中用Multimedia MCI控件开发多媒体应用

时间: 2021-07-31 作者:daque

vb是微软公司开拓的32位window开拓东西软硬件,它遏制多媒介的本领精巧和百般,如在vb 中挪用multimedia mci控件就简单实行集成音乐和视频。   一、multimedia mci控件的挪用及证明  在挪用multimedia mci控件之前,需要实行“工程\元件”菜单吩咐,将microsoft multimedia controls前的方框选中,在东西箱中便会展示multimedia 控件图标。把 multimedia 控件增添到窗体上。当你翻开灵验的多媒介摆设而且控件可用时,体例会机动实行相映处事。按钮被辨别设置为:prev、 next、 play、 pause、 back、 step、 stop、 record 和 eject。你不妨为某一个按钮编写步调,进而为其减少特出功效,但普遍情景,缺省的按钮功效就能很好地播放音乐和视频。  在援用控件时,你需要指定控件的device type 属性,也不妨缺省,对于搀杂的mci摆设和播放cd音乐你必需要证明。方法是mmcontrol1.device type=devname。下表列出了multimedia控件扶助的多媒介摆设。   在multimedia控件中特殊有效的一个属性是command,它在运转进程中向多媒介摆设发出吩咐。方法是:mmcontrol.command = cmdstrings,个中cmdstrings变量与每一个按钮的设置称呼普遍。其余,再有mode、wait、shareable、notify、updateinterval、position、length等属性和done、statusupdate事变是咱们常常用到的。   二、示例步调  底下是一个用multimedia控件集成音乐和视频的运用步调,它可播放*.wav、*.mid、*.avi文献,可表露翻开文献的功夫长度和在播放时的进度,并在状况栏里有关系的证明。编制程序如次:  1.安排窗体  兴建工程,在元件中辨别引入multimedia控件、common dialog control 、windows common control,在窗体中辨别介入commondialog、mmcontrol、slider、status bar、checkbox。label(1-3)辨别放在slider 下的左端、中央和右端,并在窗体上加一个菜单。将slider的selectrange的复选框选定,树立smallchange和maxchange为10,tickfrequengcy为20。在status bar的属性中的panels项用鼠圈点击insert panels 5 次。index有5项,在index第一项、第三项的text项中辨别输出“结余功夫”、“总功夫”,符合树立每一项的minimun width(可拜见后面临panels的遏制)。将checkbox的caption改为“轮回”,把3个label的caption都改为空字符串。结果加入菜单编纂器,树立题目为“文献”,称呼mnufile;在“文献”下创造子菜单题目辨别为“&open”、“&close”、“&exit”,称呼辨别为mnuopen、mnuclose、mnuexit(在mnuexit_click()事变填完代码后,要将其设为失效)。安排后如图1所示。  2.控件代码  本示例的源步调如次:  private sub mnuopen_click()  ′ 设定翻开文献典型  commondialog1.filter = ″midi音乐序器*.mid|*.mid|声响*.wav|*.wav|widows视频*.avi|*.avi″  commondialog1.showopen  mmcontrol1.notify = false  mmcontrol1.wait = true  mmcontrol1.shareable = false  ′由体例默许摆设典型  mmcontrol1.devicetype = ″″   mmcontrol1.filename = commondialog1.filename  ′ 翻开 mci 摆设。  mmcontrol1.command = ″open″  mnuclose.enabled = true  slider1.visible = true  end sub  private sub mmcontrol1_statusupdate()  on error goto erropen  ′树立文献长度以毫秒情势归来,  mmcontrol1.timeformat = 0  slider1.max = mmcontrol1.length / 1000  if mmcontrol1.position <> mmcontrol1.length then  slider1.value = mmcontrol1.position / 1000  else  mmcontrol1.command = ″prev″  slider1.value = 0  end if  ′挪用tstring因变量计划结余功夫和总功夫  statusbar1.panels(2) = tstring(mmcontrol1.length - mmcontrol1.position)  statusbar1.panels(4) = tstring(mmcontrol1.length)  label1.caption = ″00:00″  label2.caption = tstring(mmcontrol1.length / 2)  label3.caption = tstring(mmcontrol1.length)  ′ 由mode归来各别值并在状况栏经出相映的提醒  select case mmcontrol1.mode  case 524  statusbar1.panels(5) = ″ 未翻开摆设……″  case 525  statusbar1.panels(5) = ″遏止状况……″  case 526  statusbar1.panels(5) = ″正在播放……″ & commondialog1.filetitle  case 527  statusbar1.panels(5) = ″正在灌音……″  case 528  statusbar1.panels(5) = ″正在探求……″  case 529  statusbar1.panels(5) = ″休憩播放……″  case 530  statusbar1.panels(5) = ″摆设停当……″  end select  erropen:  ′ 停止翻开文献  end sub  ′ 自设置将毫秒变化为分、秒tstring因变量  private function tstring(sm as long) as string  s = (sm / 1000 / 60) mod 60  m = (sm / 1000) mod 60  tstring = format(s, ″00″) & ″;″ & format(m, ″00″)  end function  private sub mmcontrol1_done(notifycode as integer)  mmcontrol1.updateinterval = 100 ′ 间隙100毫秒  end sub  private sub mnuclose_click()  mmcontrol1.command = ″close″  mnuclose.enabled = false  end sub  private sub mnuexit_click()  mmcontrol1.command = ″close″  end  end sub  private sub check1_click()  if check1.value = 1 then  mmcontrol1.command = ″play″ ′ 连接播放  end if  end sub  其余,欲在暂时窗口播放*.avi文献,可在窗体加一个picturebox,在private sub mmcontrol1_statusupdate()中介入mmcontrol1.hwnddisplay = picture1.hwnd一句。运转时如图2。(本步调在vb5.0,pⅡ350中经过)

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.